当前位置: 首页 > 知识库问答 >
问题:

如果使用python获得最后一列的值,那么如何获得csv文件中第一列或第二列的值

空英逸
2023-03-14

我正在建立汽车生日愿望项目。到目前为止,我已经设法循环了一个月

with open("birthdays.csv") as birthday_file:
    birthday = pd.read_csv(birthday_file)
    month_data = birthday.month
    date_data = birthday.day
    birthday_month = [month for month in month_data]
    birthday_date = [day for day in date_data]

csv文件包含以下信息

name, email, year, month, day
Test, test@email.com,1961,12,21
Charlotte, me@yahoo.com, 2021,08,22

共有1个答案

谯德佑
2023-03-14

例如,请尝试以下操作:

import pandas as pd

# open the file to a dataframe called 'df'
# df = pd.read_csv('yourFile.csv')

# for this demo use:
df = pd.DataFrame({'name': {0: 'Test', 1: 'Charlotte'},
 ' email': {0: 'test@email.com', 1: 'me@yahoo.com'},
 ' year': {0: 1961, 1: 2020},
 ' month': {0: 12, 1: 8},
 ' day': {0: 21, 1: 25}})

# remove spaces in the column names
df.columns = df.columns.str.replace(' ', '')

# get the individual columns that make up the date to a column with a datetime format
df = df.astype({'year': 'str', 'month': 'str', 'day': 'str'})
df['date'] = df[['year', 'month', 'day']].agg('-'.join, axis=1)
df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%d')
del df['month'], df['year']

print(df)

'''
    >>         name           email day         date
    >> 0       Test  test@email.com  21   1961-12-21
    >> 1  Charlotte    me@yahoo.com  25   2020-08-25
'''

# create a function to return all email addresses (as a list)
# where the month matches the current month and the day is one week in the future
def sendReminders(delay=7):
    
    return (df.loc[(df['date'].dt.dayofyear > pd.Timestamp.now().dayofyear) &
                    (df['date'].dt.dayofyear <= (pd.Timestamp.now().dayofyear + delay)), 'email'].tolist())
    
# call the function to return a list of emails for reminders but override the 7 days and set to 5 day as an example
print(sendReminders(5))

'''
    >> ['me@yahoo.com']
'''

print('\n')

显然,您需要继续添加更多函数等。关键是要清理数据,并以正确的格式获得正确的列。一旦将数据帧中的数据组织起来,就可以进行各种计算。很可能已经有了一种方法,你只需要找到它。

 类似资料:
  • 本文向大家介绍Python中如何获得列表的最后一个元素,包括了Python中如何获得列表的最后一个元素的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将看到从列表中获取最后一个元素的不同方法。让我们一一看。 使用索引值 我们可以使用索引获取列表的最后一个元素。我们可以通过列表的长度来获取最后一个元素的索引。让我们看一下代码。 示例 输出结果 如果执行上述程序,则将得到以下结果。 使用负索

  • 问题内容: 我想知道是否可以获取列表或集合的第一个元素。使用哪种方法? 问题答案: Collection c; (这是获得a的“第一个”元素的最接近的位置。您应该意识到,它对于的大多数实现绝对没有任何意义。这可能对LinkedHashSet和TreeSet有意义,但对HashSet没有意义。)

  • 问题内容: 我有一个包含10列的表格,其中有八列是带有日期的列。我期望的结果是获取每一行的最大日期(我已经完成的工作),但我也想获取最大日期来自的列的名称。 问题答案: XML具有处理通用查询的强大能力: 更新:一些解释 第一个将创建一个如下所示的XML: 第二个用于返回中的所有节点。通过我们可以获得元素的名称()及其内容。 有诀窍,并返回其获得的所有行(这是每个ID最高)。

  • 问题内容: 我有一个类似下面的查询,并列出了它的输出: o / p: 我想重新编写查询,以便获得如下输出: 有人可以帮忙吗? 问题答案: 在11g中使用Listagg()或在10g中使用WM_Concat():

  • 它返回的第一个日期,我是一个菜鸟在正则表达式,所以请帮助我,谢谢

  • 这是我的doubht List chars=new ArrayList(); 上述列表中包含的值是[A, A, B, B, C, D, E]; 我想得到一个作为输出,因为这是根据ascii的最小值。如何在java中获取此值。