我正在尝试为线性回归设置数据集。我不能简单地将日期放在LinReg模型中,因为它需要一个数值或int。所以我试图使用int()
将字符串转换为int。但我得到了一个错误-ValueError:基数为10的的int((的无效文本
代码:
df = pd.read_csv('data/Customers.csv')
print(int(df.date[0]))
尝试将日期解析为时间戳,并在上面使用toordinal:
In [14]: import io, pandas as pd
...:
...: text = "daten01/31/2021n"
...: buff = io.StringIO(text)
...: df = pd.read_csv(buff, converters={"date": pd.Timestamp})
...: ts = df.date[0]
In [15]: ts
Out[15]: Timestamp('2021-01-31 00:00:00')
In [16]: ts.toordinal()
Out[16]: 737821
In [17]:
来源:
datetime.toordinal((是一个用于操作datetime类对象的简单方法。它返回日期的前格里高利序数,其中第1年的1月1日有序数1。函数返回给定DateTime对象的序号值。
如果第1年的1月1日有序号1,那么第1年1月2日将有序号2,依此类推