【发布时间】:2017-10-19 09:12:13
【问题描述】:
这是我将几个带有一些描述的熊猫数据框保存到文本文件中的代码:
import numy as np
import pandas as pd
rows=['row1','row2','row3', 'row4']
data=np.random.randn(18, 4,3)
with open(filename, "wb") as outfile:
house_num = 0
outfile.write(('Shape of house Array: {0} \n'.format(data.shape)).encode())
for data_slice in data:
outfile.write(('@ House: {0} \n'.format(house_num)).encode())
df=pd.DataFrame(data_slice,columns=list('XYZ'),dtype=float)
df=df.rename(index={j:k for k, j in zip(rows,range(0,4))})
text=df.to_string()
np.savetxt(filename, text)
house_num+=1
在最后一行,我收到一个错误IndexError: tuple index out of range
我想得到这样的文本文件格式:
Shape of house Array: (18,4,3)
house: 0
X Y Z
row1 1.376328 0.620332 -0.726298
row2 -0.671292 0.557585 -0.027483
row3 0.381491 1.798442 0.221806
row4 -0.223592 -0.297638 -0.258627
house: 1
X Y Z
row1 1.376328 0.620332 -0.726298
row2 -0.671292 0.557585 -0.027483
row3 0.381491 1.798442 0.221806
row4 -0.223592 -0.297638 -0.258627
....
house: 18
X Y Z
row1 1.376328 0.620332 -0.726298
row2 -0.671292 0.557585 -0.027483
row3 0.381491 1.798442 0.221806
row4 -0.223592 -0.297638 -0.258627
【问题讨论】:
-
np.savetxt('example.txt', df.values) -
@cᴏʟᴅsᴘᴇᴇᴅ,我需要用行名和列名保存,因此我将其转换为字符串
-
在这种情况下,使用
df.to_csv('example.txt', sep='\t') -
我不知道您要做什么或为什么...您在哪一行得到错误?
-
@cᴏʟᴅsᴘᴇᴇᴅ,我添加了一些描述
标签: python pandas formatting