我有一个2D矩阵,包含13行和13列(除第一列之外的标题),在Python中命名为correl.该Correl矩阵是从DataFrame生成的,我希望用多个correl填充矩阵相关.例如:
correlation=[]
correl=df.corr()
correlation=correlation.append(correl) #correlation is not a DataFrame
我使用correlation = []的原因是因为我希望用多个相关表填充相关性.这就是我使用append的原因,因为这是一个循环.
现在我想在csv文件中导出这个相关矩阵.我做:
with open("C:\destinationfolder\file.csv", "wb") as f:
writer = csv.writer(f)
writer.writerows(correlation)
我收到此错误:
引发KeyError(‘没有名为%s’的项目%com.pprint_thing(item))
KeyError:你没有名为0’的项目
为什么?
我的猜测是我没有第一列的标题…是否有更简单的方法将我的相关表导出到csv?
解决方法:
它看起来像correlation
is a DataFrame too,所以你可以简单地使用to_csv
:
correlation.to_csv("C:\destinationfolder\file.csv")
如果您有DataFrames列表,请更新以回答:
如果您有一个要在csv中创建的DataFrame列表,您有两个选择:
>将列表连接成一个更大的框架,并使用to_csv:
pd.concat(list_of_dataframes).to_csv(...)
>遍历每个DataFrame并使用to_csv with 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')
见https://stackoverflow.com/a/17531025/1240268.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。