繁体   English   中英

使用seaborn.pairplot()

[英]Using seaborn.pairplot()

我有以下数据框:

              id        date  channel_id  n_tickets country_1
1224871  1614666  2017-01-01          39          1         4
214927      9425  2017-01-01          39          1        24
983594    559205  2017-01-01          39          3        19
1263871    51367  2017-01-01          39          1        24
162460    547023  2017-01-01          39          1        24
1141341  1954267  2017-01-01          39          1         4
816493   1287489  2017-01-01          39          1        24
897853    911869  2017-01-01          37          2        24
1593219  1141881  2017-01-01          28          2         4
476974    341877  2017-01-01          28          1        24
713604   1834146  2017-01-01          39          1        24
897817    639413  2017-01-01          39          1        11
283442    264653  2017-01-01          39          1        24

我要申请:

sns.pairplot(df_final_sortedbydate)
plt.show()

但我得到错误为:

TypeError: unorderable types: float() <= str()

您已经找到了解决方案,但是由于尚未提供正式答案,因此,我对此采取了以下措施:


令我有些惊讶的是,即使对您提供的数据df_final_sortedbydate = pd.read_clipboard(sep='\\\\s+')突出显示和ctrl + C等简单操作,也可以使用df_final_sortedbydate = pd.read_clipboard(sep='\\\\s+')解决该问题:

# imports
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# read data from the clipboard
df_final_sortedbydate = pd.read_clipboard(sep='\\s+')

# plot
sns.pairplot(df_final_sortedbydate)
plt.show()

在此处输入图片说明

如ImportanceOfBeingErnest所述,更通用的解决方案是使用astype(float)确保数据类型为数字格式:

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# Assuming that your dataframe has been loaded with values of a non-numeric type
subset1 = ['channel_id',   'n_tickets', 'country_1']
df_final_sortedbydate[subset1] = df_final_sortedbydate[subset1].astype(float)

# plot
sns.pairplot(df_final_sortedbydate)
plt.show()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM