gpt4 book ai didi

python - 在 csv.reader 之后从列(Python Pandas)中获取最早的日期

转载 作者:行者123 更新时间:2023-12-04 03:03:22 24 4
gpt4 key购买 nike

我从具有多列的 CSV 文件加载一些数据。在我的 csv.reader 中,我有一个 IF 函数。我试图从特定列(开始日期)中获取最早的日期。

我首先加载数据:

for row in csv.reader(open('myFile.csv')):
if row[4] == '56886':
key = row[4] #key = (row[4], row[33][:4], row[4])
startDate = row[19]

当我打印列 (startDate) 时,我得到了这个:

enter image description here

01)我尝试使用以下内容:
content = min(content)
print(content)

我在终端得到了这个:

enter image description here

02)然后我尝试更改我的代码:
for row in csv.reader(open('myFile.csv',
parse_dates=['Start Date'],
usecols=['Start Date']))
if row[4] == '56886':
key = row[4] #key = (row[4], row[33][:4], row[4])
startDate = row[19]

我得到了一个 无效语法 错误。

03)我尝试将线路更改为:
pandas.read_csv('myFile.csv', parse_dates=['Start Date'], usecols=['Start Date'])

我得到了同样的错误。

最好的解决方法是什么?到目前为止,我还没有找到解决方案。

最佳答案

我想你需要 boolean indexing 过滤:

#dont filter all columns by usecols    
df = pd.read_csv('file', parse_dates=['Start Date', 'End Date']) #columns to datetimes

#filter output first by column ID and then get min and max
a = df.loc[ df['ID'] == 56886, 'Start Date'].min()


b = df.loc[ df['ID'] == 56886, 'End Date'].max()

关于python - 在 csv.reader 之后从列(Python Pandas)中获取最早的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46848209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com