[英]Pandas.cut() on categorical values
這是我的 dataframe
df = pd.DataFrame(['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D'],
index=['excellent', 'excellent', 'excellent', 'good', 'good', 'good', 'ok', 'ok' ,
'ok', 'poor', 'poor'])
df.rename(columns={0: 'Grades'}, inplace=True)
df= df.iloc[::-1]
dataframe.Grades = pd.Categorical(dataframe.Grades,
categories = list(dataframe.Grades),
ordered = True)
但后來我想使用 pd.cut 將值划分為兩個箱
pd.cut(df.Grades, 2, labels=['Good', 'Bad'])
但它返回一個錯誤,上面寫着
只能將 str (不是“float”)連接到 str
我的錯誤是什么? 謝謝
Pandas 切割不是正確的工具。 它將連續變量轉換為分箱變量。 例子:
values = pd.Series([0,1,2,3,4,5,6]
binned = pd.cut(values, bins=3)
binned
>>> 0 (-0.006, 2.0]
1 (-0.006, 2.0]
2 (-0.006, 2.0]
3 (2.0, 4.0]
4 (2.0, 4.0]
5 (4.0, 6.0]
6 (4.0, 6.0]
如您所見,它確定了 bin(2 個單位的 3 個 bin 以覆蓋 0-6 范圍),並通過分配相應的 bin 將連續值轉換為分類值。
如果您需要進一步的幫助,請編輯您的問題,提供您的輸入和所需的 output,以便我們了解您想要實現的目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.