时重命名数据帧列我知道通常如下大熊猫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