Hướng dẫn add dummy variables to dataframe python - thêm các biến giả vào dataframe python

Tôi có một khung dữ liệu trông như thế này:

             JOINED_CO GENDER    EXEC_FULLNAME  GVKEY  YEAR  CONAME  BECAMECEO  REJOIN   LEFTOFC    LEFTCO  RELEFT    REASON  PAGE
CO_PER_ROL                                                                                                                                     
5622              NaN   MALE   Ira A. Eichner   1004  1992  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1993  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1994  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1995  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1996  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1997  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5622              NaN   MALE   Ira A. Eichner   1004  1998  AAR CORP   19550101     NaN  19961001  19990531     NaN  RESIGNED    79
5623              NaN   MALE  David P. Storch   1004  1992  AAR CORP   19961009     NaN       NaN       NaN     NaN       NaN    57
5623              NaN   MALE  David P. Storch   1004  1993  AAR CORP   19961009     NaN       NaN       NaN     NaN       NaN    57
5623              NaN   MALE  David P. Storch   1004  1994  AAR CORP   19961009     NaN       NaN       NaN     NaN       NaN    57
5623              NaN   MALE  David P. Storch   1004  1995  AAR CORP   19961009     NaN       NaN       NaN     NaN       NaN    57
5623              NaN   MALE  David P. Storch   1004  1996  AAR CORP   19961009     NaN       NaN       NaN     NaN       NaN    57

Đối với giá trị năm, tôi muốn thêm các cột năm (1993.1994 ..., 2009) vào khung dữ liệu gốc, nếu giá trị trong năm là năm 1992, thì giá trị trong cột 1992 nên là 1 nếu không 0.

Tôi đã sử dụng một vòng lặp rất ngu ngốc, nhưng nó dường như chạy mãi mãi khi tôi có một bộ dữ liệu lớn. Bất cứ ai có thể giúp tôi với nó, cảm ơn rất nhiều!

Hướng dẫn add dummy variables to dataframe python - thêm các biến giả vào dataframe python

Ivanleoncz

8.0574 Huy hiệu vàng53 Huy hiệu bạc48 Huy hiệu đồng4 gold badges53 silver badges48 bronze badges

Hỏi ngày 22 tháng 4 năm 2014 lúc 1:19Apr 22, 2014 at 1:19

In [77]: df = pd.concat([df, pd.get_dummies(df['YEAR'])], axis=1); df
Out[77]: 
      JOINED_CO GENDER    EXEC_FULLNAME  GVKEY  YEAR    CONAME  BECAMECEO  \
5622        NaN   MALE   Ira A. Eichner   1004  1992  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1993  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1994  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1995  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1996  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1997  AAR CORP   19550101   
5622        NaN   MALE   Ira A. Eichner   1004  1998  AAR CORP   19550101   
5623        NaN   MALE  David P. Storch   1004  1992  AAR CORP   19961009   
5623        NaN   MALE  David P. Storch   1004  1993  AAR CORP   19961009   
5623        NaN   MALE  David P. Storch   1004  1994  AAR CORP   19961009   
5623        NaN   MALE  David P. Storch   1004  1995  AAR CORP   19961009   
5623        NaN   MALE  David P. Storch   1004  1996  AAR CORP   19961009   

      REJOIN   LEFTOFC    LEFTCO  RELEFT    REASON  PAGE  1992  1993  1994  \
5622     NaN  19961001  19990531     NaN  RESIGNED    79     1     0     0   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     1     0   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     0     1   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     0     0   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     0     0   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     0     0   
5622     NaN  19961001  19990531     NaN  RESIGNED    79     0     0     0   
5623     NaN       NaN       NaN     NaN       NaN    57     1     0     0   
5623     NaN       NaN       NaN     NaN       NaN    57     0     1     0   
5623     NaN       NaN       NaN     NaN       NaN    57     0     0     1   
5623     NaN       NaN       NaN     NaN       NaN    57     0     0     0   
5623     NaN       NaN       NaN     NaN       NaN    57     0     0     0   

      1995  1996  1997  1998  
5622     0     0     0     0  
5622     0     0     0     0  
5622     0     0     0     0  
5622     1     0     0     0  
5622     0     1     0     0  
5622     0     0     1     0  
5622     0     0     0     1  
5623     0     0     0     0  
5623     0     0     0     0  
5623     0     0     0     0  
5623     1     0     0     0  
5623     0     1     0     0  

Nếu bạn muốn xóa cột YEAR, thì bạn có thể theo dõi nó với del df['YEAR']. Hoặc, thả cột YEAR từ df trước khi gọi concat:

df = pd.concat([df.drop('YEAR', axis=1), pd.get_dummies(df['YEAR'])], axis=1)

Đã trả lời ngày 22 tháng 4 năm 2014 lúc 1:51Apr 22, 2014 at 1:51

UnutbuUnutbuunutbu

799K172 Huy hiệu vàng1723 Huy hiệu bạc1624 Huy hiệu đồng172 gold badges1723 silver badges1624 bronze badges

3

Làm thế nào để bạn thêm một biến giả vào khung dữ liệu?

Ví dụ: nếu bạn có biến phân loại giới tính, trong dataFrame của bạn có tên là DF DF, bạn có thể sử dụng mã sau để tạo các biến giả: df_dc = pd.get_dummies (df, cột = ['giới tính']). Nếu bạn có nhiều biến phân loại, bạn chỉ cần thêm mọi tên biến làm chuỗi vào danh sách!df_dc = pd. get_dummies(df, columns=['Gender']) . If you have multiple categorical variables you simply add every variable name as a string to the list!

Làm thế nào để bạn thêm một biến giả trong gấu trúc?

Chúng ta có thể tạo các biến giả trong python bằng phương thức get_dummies () ...
Cú pháp: pandas.get_dummies (dữ liệu, tiền tố = none, prefix_sep = '_',).
Parameters:.
Loại trả về: Biến giả ..

Làm thế nào để bạn thêm một giá trị giả trong Python?

Trao đổi một bộ giả của Datmies vào câu trả lời mã của DataFrame..
Dummies = Pd.get_dummies (df [['cột_1']], drop_first = true).
df = pd.Concat ([df. ....
Lưu ý: Để biết thêm rằng một coloum tiếp tục tham gia vào danh sách ..
Dummies = Pd.get_dummies (df [['cột_1', 'cột_2', 'cột_3']], drop_first = true).
df = pd.Concat ([df ..

Làm thế nào để bạn thêm một cột giả?

SQL Thêm cột giả để chọn câu lệnh..
Chọn * từ my_table trong đó id = 1500.Tôi nhận được một hàng được trả về với tất cả các cột (như mong đợi).....
Chọn 'Văn bản cột giả' làm giả từ my_table trong đó id = 1500.....
Chọn 'Văn bản cột giả' làm giả, * từ my_table trong đó id = 1500 ..