時重命名數據幀列我知道通常如下大熊貓itertuples()將返回每個包括列名的值:熊貓df.itertuples打印
ab=pd.DataFrame(np.random.random([3,3]),columns=['hi','low','med'])
for i in ab.itertuples():
print(i)
和輸出如下:
Pandas(Index=0, hi=0.05421443, low=0.2456833, med=0.491185)
Pandas(Index=1, hi=0.28670429, low=0.5828551, med=0.279305)
Pandas(Index=2, hi=0.53869406, low=0.3427290, med=0.750075)
但是,我不知道它爲什麼不顯示我想象我的另一組的代碼如下列:
us qqq equity us spy equity
date
2017-06-19 0.0 1.0
2017-06-20 0.0 -1.0
2017-06-21 0.0 0.0
2017-06-22 0.0 0.0
2017-06-23 1.0 0.0
2017-06-26 0.0 0.0
2017-06-27 -1.0 0.0
2017-06-28 1.0 0.0
2017-06-29 -1.0 0.0
2017-06-30 0.0 0.0
以上是以Timestamp爲索引的Pandas Dataframe,列表中的值爲float64,以及字符串['us qqq equity','us spy equity']的列表作爲列。
當我這樣做:
for row in data.itertuples():
print (row)
它顯示的列_1和_2如下:
Pandas(Index=Timestamp('2017-06-19 00:00:00'), _1=0.0, _2=1.0)
Pandas(Index=Timestamp('2017-06-20 00:00:00'), _1=0.0, _2=-1.0)
Pandas(Index=Timestamp('2017-06-21 00:00:00'), _1=0.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-22 00:00:00'), _1=0.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-23 00:00:00'), _1=1.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-26 00:00:00'), _1=0.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-27 00:00:00'), _1=-1.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-28 00:00:00'), _1=1.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-29 00:00:00'), _1=-1.0, _2=0.0)
Pandas(Index=Timestamp('2017-06-30 00:00:00'), _1=0.0, _2=0.0)
有沒有人有什麼我做錯任何線索?創建原始數據框時,它是否與某些可變引用問題有關? (另外,作爲一個側面的問題,我從社區瞭解到itertuples()生成的數據類型應該是元組,但是看起來(如上所示),返回類型是從類型語句驗證的)?
感謝您的耐心等待,因爲我仍然在努力掌握DataFrame的應用。
'data.columns'說什麼? –
@Willem凡Onsem 它說'指數([「我們QQQ權益」,「美國間諜股權」],D類=「對象」)' – user7786493