如何在不命名DataFrame列的情况下使用Seaborn.lmplot函数?

dan*_*iri 4 python dataframe pandas seaborn

我想用Seaborn.lmplot散布Dataframe的“ column 1” vs “ column 2”,但是根据Seaborn文档:

Seaborn.lmplot(x,y,data,hue = None,...)

我们应该提供使用此功能的列的名称,换句话说,Dataframes列应该是字符串而不是整数。

我尝试了以下方法,但是没有一个起作用!

import seaborn as sns
import pandas as pd
df = pd.read_csv('someData.csv',sep=',', header=None)

sns.lmplot(0,1, data= df)
sns.lmplot(df[0], df[1])
sns.lmplot("0","1",data= df)
Run Code Online (Sandbox Code Playgroud)

和我的dataFrame是这样的: 在此处输入图片说明

有什么方法可以使用Seaborn.lmplot而无需命名列!

Imp*_*est 5

Seaborn不允许使用未命名的列。
但是,一个简单的解决方案是仅出于绘图目的而重命名列。将整数映射到字符串(lambda x: str(x))将允许使用字符串作为seaborn图的列名。

sns.lmplot(x="0", y="1", data=df.rename(columns=lambda x: str(x)))
Run Code Online (Sandbox Code Playgroud)

原始数据帧将保持不变。