Python Seaborn Pairplot与数据帧vs CSV
我在Jupyter笔记本中有一个数据框,并在上面做了一对绘图,以获得一组相互之间的绘图Python Seaborn Pairplot与数据帧vs CSV,python,pandas,csv,plot,Python,Pandas,Csv,Plot,我在Jupyter笔记本中有一个数据框,并在上面做了一对绘图,以获得一组相互之间的绘图 import seaborn as sns sns.pairplot(df_merge) 这是结果的配对图 但是,它以非美学的方式错误地绘制数据。但是,当我将此数据帧导出到csv,然后将其作为数据帧读回程序时: import seaborn as sns df_merge.to_csv('dataframe.csv') x = pd.read_csv('dataframe.csv') sns.pairpl
import seaborn as sns
sns.pairplot(df_merge)
这是结果的配对图
但是,它以非美学的方式错误地绘制数据。但是,当我将此数据帧导出到csv,然后将其作为数据帧读回程序时:
import seaborn as sns
df_merge.to_csv('dataframe.csv')
x = pd.read_csv('dataframe.csv')
sns.pairplot(x)
Sns绘制得很好,变量之间的相关性可以看到,但我有一个不必要的列,名为Unnamed,我不需要它
是否有人知道是什么原因导致此问题,以及我如何在不需要将数据帧导出为csv的情况下纠正此问题?当您这样做时:
df_merge.to_csv('dataframe.csv')
您还可以编写df_merge
的索引,但不带名称。然后
x = pd.read_csv('dataframe.csv')
将索引读取为未命名0
列。要解决此问题,请保存不带索引的数据帧:
df_merge.to_csv('dataframe.csv', index=False)
x = pd.read_csv('dataframe.csv')
或使用索引读取csv:
df_merge.to_csv('dataframe.csv')
x = pd.read_csv('dataframe.csv', index_col=[0])
我发现我遇到的问题是,当我将数据帧更改为CSV,然后再将其更改回数据帧时,数据帧中的值具有float64类型,而在我的数据帧中,它们之前都是对象。在绘制图形之前,将所有数字列转换为float解决了我的问题。这很有意义。我不知道为什么直接将数据帧放入pairplotting会给我一个混乱的绘图,因为两个绘图都应该输出相同的东西和图形。你知道为什么会出现这种情况吗?检查
df_merge
是否有字符串或分类变量?我不相信有。它会改变它吗?我将整个DF写入CSV,然后重新读取到程序中?这两个帧应该是相同的,对吗?写入csv前的一个和写入csv后的一个?