Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 将列表映射到dataframe列值_Python 3.x_Pandas - Fatal编程技术网

Python 3.x 将列表映射到dataframe列值

Python 3.x 将列表映射到dataframe列值,python-3.x,pandas,Python 3.x,Pandas,我有两张单子 Countrylist = ['USA', 'INDIA', 'SINGAPORE','CHINA','MALAYSIA'] COLORLIST = ['#F1F326', '#D95969', '#D4526E', '#250591', '#FDBB2B'] 我有一个带有4列的df: Country Category AVGSPEED AVGVELOCITY USA High 345 4634 INDIA Low 4363 4

我有两张单子

Countrylist = ['USA', 'INDIA', 'SINGAPORE','CHINA','MALAYSIA']
COLORLIST = ['#F1F326', '#D95969', '#D4526E', '#250591', '#FDBB2B']
我有一个带有4列的df:

Country Category AVGSPEED AVGVELOCITY
USA     High     345       4634
INDIA   Low      4363      435346
USA     Low      345       346346
CHINA   High     3462      23423
CHINA   Medium   46346     46346
我想在数据框中添加一个新列,以便列表中的颜色映射到数据框中显示的国家。 我的一种想法是在两个列表之间创建一个dict,然后将键值映射到数据框中的country列。

使用由两个列表的
zip
创建的字典:

Countrylist = ['USA', 'INDIA', 'SINGAPORE','CHINA','MALAYSIA']
COLORLIST = ['#F1F326', '#D95969', '#D4526E', '#250591', '#FDBB2B']

df['Color'] = df['Country'].map(dict(zip(Countrylist, COLORLIST)))
print (df)
  Country Category  AVGSPEED  AVGVELOCITY    Color
0     USA     High       345         4634  #F1F326
1   INDIA      Low      4363       435346  #D95969
2     USA      Low       345       346346  #F1F326
3   CHINA     High      3462        23423  #250591
4   CHINA   Medium     46346        46346  #250591
由两个列表的
zip
创建的字典使用:

Countrylist = ['USA', 'INDIA', 'SINGAPORE','CHINA','MALAYSIA']
COLORLIST = ['#F1F326', '#D95969', '#D4526E', '#250591', '#FDBB2B']

df['Color'] = df['Country'].map(dict(zip(Countrylist, COLORLIST)))
print (df)
  Country Category  AVGSPEED  AVGVELOCITY    Color
0     USA     High       345         4634  #F1F326
1   INDIA      Low      4363       435346  #D95969
2     USA      Low       345       346346  #F1F326
3   CHINA     High      3462        23423  #250591
4   CHINA   Medium     46346        46346  #250591
是的,是地图:

df['color'] = df['Country'].map(pd.Series(COLORLIST, index=Countrylist))
输出:

  Country Category  AVGSPEED  AVGVELOCITY    color
0     USA     High       345         4634  #F1F326
1   INDIA      Low      4363       435346  #D95969
2     USA      Low       345       346346  #F1F326
3   CHINA     High      3462        23423  #250591
4   CHINA   Medium     46346        46346  #250591
是的,是地图:

df['color'] = df['Country'].map(pd.Series(COLORLIST, index=Countrylist))
输出:

  Country Category  AVGSPEED  AVGVELOCITY    color
0     USA     High       345         4634  #F1F326
1   INDIA      Low      4363       435346  #D95969
2     USA      Low       345       346346  #F1F326
3   CHINA     High      3462        23423  #250591
4   CHINA   Medium     46346        46346  #250591