将 csv 文件的日期列与今天的日期进行比较
Comparing date column of the csv file to today date
我需要将我的大数据的日期与今天的日期进行比较,以便在日期大于或小于今天的情况下计算另一个列值。
我的代码如下,但是我总是出错!
我试过Timestamp.now()
但是我的python3.6无法识别。
import datetime
def midspread_calcs():
for row in df_midspread:
if df_midspread['Date']<datetime.datetime.now():
df_midspread['Midspread']= df_midspread.Oldrate*df_midspread.Value
else:
df_midspread['Midspread']= df_midspread.Newrate*df_midspread.Value
result = midspread_calcs()
检查 db_midspread['Date'] 的日期时间格式是否正确。你的逻辑是正确的
如果不使用以下代码:
最简单的方法是使用 to_datetime:
db_midspread['Date'] = pd.to_datetime(db_midspread['Date'])```
一些乍一看很厉害的问题:
1- 您的 for 循环命名错误
for row in df_midspread:
if row['Date']<datetime.datetime.now():
row['Midspread']= row.Oldrate*row.Value
else:
row['Midspread']= row.Newrate*row.Value
2- 您调用了您的函数并将其分配给结果,但您的函数没有 return
。
3- 您应该确保 df_midspread['Date']
是日期时间。
感谢您的建议,现在有效:)
对于 df_midspread['Date'] 中的行:
if row<datetime.datetime.now():
df_midspread['Midspread']= df_midspread.Oldrate*df_midspread.Value
else:
df_midspread['Midspread']= df_midspread.Newrate*df_midspread.Value
我需要将我的大数据的日期与今天的日期进行比较,以便在日期大于或小于今天的情况下计算另一个列值。
我的代码如下,但是我总是出错!
我试过Timestamp.now()
但是我的python3.6无法识别。
import datetime
def midspread_calcs():
for row in df_midspread:
if df_midspread['Date']<datetime.datetime.now():
df_midspread['Midspread']= df_midspread.Oldrate*df_midspread.Value
else:
df_midspread['Midspread']= df_midspread.Newrate*df_midspread.Value
result = midspread_calcs()
检查 db_midspread['Date'] 的日期时间格式是否正确。你的逻辑是正确的
如果不使用以下代码: 最简单的方法是使用 to_datetime:
db_midspread['Date'] = pd.to_datetime(db_midspread['Date'])```
一些乍一看很厉害的问题:
1- 您的 for 循环命名错误
for row in df_midspread:
if row['Date']<datetime.datetime.now():
row['Midspread']= row.Oldrate*row.Value
else:
row['Midspread']= row.Newrate*row.Value
2- 您调用了您的函数并将其分配给结果,但您的函数没有 return
。
3- 您应该确保 df_midspread['Date']
是日期时间。
感谢您的建议,现在有效:) 对于 df_midspread['Date'] 中的行:
if row<datetime.datetime.now():
df_midspread['Midspread']= df_midspread.Oldrate*df_midspread.Value
else:
df_midspread['Midspread']= df_midspread.Newrate*df_midspread.Value