繁体   English   中英

使用 df 列中的值从另一个 df 中查找名称

[英]Use values in a column of a df to find name from another df

我有 2 个数据框;

import pandas as pd

data1 = {"name": ["a","b","c","d","e"], "value": [0.01,0.02,0.03,0.04,0.05]}

df1 = pd.DataFrame (data1, columns = ['name', 'value'])

data2 = {"value": [0.01,0.03,0.05]}

df2 = pd.DataFrame (data2, columns = ['value'])

我想使用 df2 中的值从 df1 中查找其对应的名称,并将其添加为新列。 即以这个df结束:

data3 = {"value": [0.01,0.03,0.05], "name": ["a","c","e"]}

df3 = pd.DataFrame (data3, columns = ['value', 'name'])

这里是 go:

print(df2.merge(df1, on='value'))

Output:

   value name
0   0.01    a
1   0.03    c
2   0.05    e

您可以在此处使用pd.Series.isin并将其用作boolean indexing中的掩码。

df1[df1['value'].isin(df2['value'])]

  name  value
0    a   0.01
2    c   0.03
4    e   0.05

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM