簡體   English   中英

在熊貓數據框中將字符串轉換為整數

[英]Convert strings to integers in pandas dataframe

我有一個如下所示的數據集:

                Name       ARowss   TotalRowss        Percentage
                motors        11           11               100 
                trck1         2             2               100 
                trck2         2             2               100 
                hydr1         4             4               100
                gas1          2             2               100

我正在對數據進行一些清理,我必須為“名稱”中的每個值分配一個新數字。 所有值在“名稱”列中都是唯一的。 所以,從上面的數據集中,“motors”應該有 1,“trck1”應該有 2,“trck2”應該有 3,依此類推。

這是你想要的嗎?

In [5]: df['id'] = pd.factorize(df.Name)[0]

In [6]: df
Out[6]:
     Name  ARowss  TotalRowss  Percentage  id
0  motors      11          11         100   0
1   trck1       2           2         100   1
2   trck2       2           2         100   2
3   hydr1       4           4         100   3
4    gas1       2           2         100   4

或者這個,取決於你的目標:

In [10]: df.Name = pd.factorize(df.Name)[0] + 1

In [11]: df
Out[11]:
   Name  ARowss  TotalRowss  Percentage
0     1      11          11         100
1     2       2           2         100
2     3       2           2         100
3     4       4           4         100
4     5       2           2         100

它也適用於非唯一值:

In [15]: df
Out[15]:
     Name  ARowss  TotalRowss  Percentage
0  motors      11          11         100
1   trck1       2           2         100
2   trck2       2           2         100
3   hydr1       4           4         100
4    gas1       2           2         100  # duplicates in `Name`
5    gas1       2           3         111  # 

In [16]: df.Name = pd.factorize(df.Name)[0] + 1

In [17]: df
Out[17]:
   Name  ARowss  TotalRowss  Percentage
0     1      11          11         100
1     2       2           2         100
2     3       2           2         100
3     4       4           4         100
4     5       2           2         100  #
5     5       2           3         111  # 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM