Python:以csv格式导出矩阵
在Python中,我有一个名为Python:以csv格式导出矩阵,python,pandas,Python,Pandas,在Python中,我有一个名为correl的2D矩阵,它有13行13列(除了第一列之外还有标题)。这个correl矩阵是从一个DataFrame生成的,我想用多个correl填充一个矩阵correlation。例如: correlation=[] correl=df.corr() correlation=correlation.append(correl) #correlation is not a DataFrame 我之所以使用correlation=[]是因为我希望用多个相关表填充cor
correl
的2D矩阵,它有13行13列(除了第一列之外还有标题)。这个correl
矩阵是从一个DataFrame
生成的,我想用多个correl
填充一个矩阵correlation
。例如:
correlation=[]
correl=df.corr()
correlation=correlation.append(correl) #correlation is not a DataFrame
我之所以使用correlation=[]
是因为我希望用多个相关表填充correlation
。这就是为什么我使用append
,因为这是一个循环
现在,我希望将此关联矩阵导出到csv文件中。我有:
with open("C:\destinationfolder\file.csv", "wb") as f:
writer = csv.writer(f)
writer.writerows(correlation)
我得到这个错误:
raise KeyError('没有名为%s的项目'%com.pprint\u thing(项目))
KeyError:u'没有名为0的项目'
为什么??
我猜我没有第一列的标题。。。是否有更简单的方法将我的关联表导出到csv 它看起来像,因此您可以简单地使用:
如果您有数据帧列表,请更新以回答:
如果您有一个要制作成csv的数据帧列表,则有两个选项:
来\u csv
:
pd.concat(list_of_dataframes).to_csv(...)
和append(mode='a'
)一起使用。比如:
list_of_dataframes[0].to_csv(...) # write first, using headers.. assumes list isn't empty!
for df in list_of_dataframes[1:]:
df.to_csv(..., header=False, mode='a')
看
correlation
是数据帧吗?你有没有试过关联到csv(“C:\destinationfolder\file.csv”)?我没有正确解释我的问题。看我问题中的变化。我知道相关性是一个数据帧,但如果我将每个数据帧附加到一个循环中,则不会如此。@CharlesM在这种情况下,您可以:concat制作一个大数据帧并使用to_csv,或者在使用to_csv时使用mode='a'(append)。
list_of_dataframes[0].to_csv(...) # write first, using headers.. assumes list isn't empty!
for df in list_of_dataframes[1:]:
df.to_csv(..., header=False, mode='a')