所以,这是我的数据框
import pandas as pd
cols = ['Name','Country','Income']
vals = [['Steve','USA',40000],['Matt','UK',40000],['John','USA',40000],['Martin','France',40000],]
x = pd.DataFrame(vals,columns=cols)
我还有另一个清单:
europe = ['UK','France']
如果x.Country位于欧洲,我想创建一个新列“ Continent”
最佳答案
或者您可以直接使用isin
x['New Column']='Not Europe'
x.loc[x.Country.isin(europe),'New Column']='Europe'
Out[612]:
Name Country Income New Column
0 Steve USA 40000 Not Europe
1 Matt UK 40000 Europe
2 John USA 40000 Not Europe
3 Martin France 40000 Europe
关于python - 如何基于列表中的值更新/创建 Pandas 中的列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45921083/