亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何基于另一個帶有日期的列創建 Pandas 列?

如何基于另一個帶有日期的列創建 Pandas 列?

慕容708150 2022-07-05 18:59:30
我的csv有:Date,Open,High,Low,Close,Adj Close,Volume,dOpen,dHigh,dLow,dClose,dVolume1/29/93,43.96875,43.96875,43.75,43.9375,26.45393,1003200,0,0,0,0,02/1/93,43.96875,44.25,43.96875,44.25,26.642057,480500,0,0.006396588,0.005,0.007112376,0.0071114952/2/93,44.21875,44.375,44.125,44.34375,26.698507,201300,0.005685856,0.002824859,0.00355366,0.002118644,0.002118832/3/93,44.40625,44.84375,44.375,44.8125,26.980742,529400,0.004240283,0.01056338,0.005665722,0.010570825,0.010571192/4/93,44.96875,45.09375,44.46875,45,27.093624,531500,0.012667136,0.005574913,0.002112676,0.0041841,0.004183799我在做:    spy_data = pd.read_csv('data/SPY_daily.csv')    spy_data['day_of_week'] = spy_data.apply(        lambda row: datetime.strptime(row['Date'],  "%m/%d/%Y"))    print(spy_data)但我得到一個錯誤KeyError: ('Date', 'occurred at index Date')我做錯了什么?
查看完整描述

3 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

而不是使用apply它更好地將日期視為適當的日期時間并使用dt方法的功能


例如


spy_data = pd.read_csv(StringIO(your_data),sep=',')

spy_data['Date'] = pd.to_datetime(spy_data['Date'])


day_of_week = spy_data['Date'].dt.strftime("%m/%d/%Y")


print(day_of_week)


0    01/29/1993

1    02/01/1993

2    02/02/1993

3    02/03/1993

4    02/04/1993

Name: Date, dtype: object

如果您的日期設置為您的索引:


spy_data.index.strftime("%m/%d/%Y")

out:

Index(['01/29/1993', '02/01/1993', '02/02/1993', '02/03/1993', '02/04/1993'], dtype='object')



查看完整回答
反對 回復 2022-07-05
?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

您還需要指定axis=1何時使用apply()函數,以表明它應該應用于行級。


軸:{0 或“索引”,1 或“列”},默認 0


沿其應用函數的軸:


0 或“索引”:將函數應用于每一列。


1 或“列”:將函數應用于每一行。


以下應該可以解決問題:


spy_data = pd.read_csv('data/SPY_daily.csv')

spy_data['day_of_week'] = spy_data.apply(

    lambda row: datetime.strptime(row['Date'],  "%m/%d/%Y"), axis=1)

print(spy_data)


查看完整回答
反對 回復 2022-07-05
?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

問題是pandas.read_csv將第一列作為數據框的索引,因此它不在列中。為了避免這種情況,你應該明確說熊貓不要這樣做:

spy_data = pd.read_csv('data/SPY_daily.csv', index_col=False)


查看完整回答
反對 回復 2022-07-05
  • 3 回答
  • 0 關注
  • 145 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號