我有一個如下所示的日期框架
| ID | 價值 | 國家 |
|---|---|---|
| 1 | 20 | 德 |
| 21 | 10 | IND |
當 country = DE 時,我想在“value”列中添加 4,以便資料框變為
| ID | 價值 | 國家 |
|---|---|---|
| 1 | 24 | 德 |
| 21 | 10 | IND |
我嘗試了以下代碼,但它不作業,我收到一個錯誤
def add_buffer(df):
if df.country == 'DE':
df.value = df.value 4
else:
df.value = df.value
return df
df1 = add_buffer(df)
uj5u.com熱心網友回復:
您只能在等于 DE 的地方使用.loc更新valuecountry
import pandas as pd
df = pd.DataFrame({'ID': {0: 1, 1: 21}, 'value': {0: 20, 1: 10}, 'country': {0: 'DE', 1: 'IND'}})
df.loc[df['country'].eq('DE'),'value'] =4
print(df)
輸出
ID value country
0 1 24 DE
1 21 10 IND
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/456651.html
上一篇:選擇列內特定行值之間的所有行
