您需要選擇列:
In [41]:
df.loc[df['First Season'] > 1990, 'First Season'] = 1
df
Out[41]:
Team First Season Total Games
0 Dallas Cowboys 1960 894
1 Chicago Bears 1920 1357
2 Green Bay Packers 1921 1339
3 Miami Dolphins 1966 792
4 Baltimore Ravens 1 326
5 San Franciso 49ers 1950 1003
所以這裏的語法是:
df.loc[<mask>(here mask is generating the labels to index) , <optional column(s)> ]
您可以檢查docs,也是10 minutes to pandas這表明語義
編輯
如果你想生成一個布爾值指標,那麼你可以只使用布爾條件產生boolean值系列和鑄鐵的D型到int
這將分別轉換True
和False
到1
和0
:
In [43]:
df['First Season'] = (df['First Season'] > 1990).astype(int)
df
Out[43]:
Team First Season Total Games
0 Dallas Cowboys 0 894
1 Chicago Bears 0 1357
2 Green Bay Packers 0 1339
3 Miami Dolphins 0 792
4 Baltimore Ravens 1 326
5 San Franciso 49ers 0 1003
工作太棒了!難道不可能施加多重轉換嗎? 'df.loc [df ['First Season']> 1990,'First Season'] = 1 df.loc [df ['First Season'] <1990,'First Season'] = 0'使所有的值該列返回0 – ichimok
您可以使用一個技巧'df ['First Season'] =(df ['First Season']> 1990).astype(int)'這會創建一個布爾串並且轉換爲int轉換'True'和「假」分別爲「1」和「0」 – EdChum
astype(int)更加可Pandorable!好答案。 – mythicalcoder