python改变字符串类型_python – Sklearn将字符串类标签更改为int
我有一個pandas數據幀,我正在嘗試將字符串表示的給定列中的值更改為整數.例如:
df = index fruit quantity price
0 apple 5 0.99
1 apple 2 0.99
2 orange 4 0.89
4 banana 1 1.64
...
10023 kiwi 10 0.92
我想看看:
df = index fruit quantity price
0 1 5 0.99
1 1 2 0.99
2 2 4 0.89
4 3 1 1.64
...
10023 5 10 0.92
我可以這樣做
df["fruit"] = df["fruit"].map({"apple": 1, "orange": 2,...})
如果我有一個小的列表要改變,這是有效的,但我正在看一個有500多個不同標簽的專欄.有沒有辦法將其從字符串更改為int?
df.fruit = pd.factorize(df.fruit)[0]
print (df)
fruit quantity price
0 0 5 0.99
1 0 2 0.99
2 1 4 0.89
3 2 1 1.64
4 3 10 0.92
df.fruit = pd.Categorical(pd.factorize(df.fruit)[0])
print (df)
fruit quantity price
0 0 5 0.99
1 0 2 0.99
2 1 4 0.89
3 2 1 1.64
4 3 10 0.92
print (df.dtypes)
fruit category
quantity int64
price float64
dtype: object
如果需要從1開始計數:
df.fruit = pd.Categorical(pd.factorize(df.fruit)[0] + 1)
print (df)
fruit quantity price
0 1 5 0.99
1 1 2 0.99
2 2 4 0.89
3 3 1 1.64
4 4 10 0.92
總結
以上是生活随笔為你收集整理的python改变字符串类型_python – Sklearn将字符串类标签更改为int的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python下载模块命令_python
- 下一篇: python瀑布图怎么做_利用Pytho