簡體   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