用其他数据框的两列对数据框进行子设置

鲍勃

我有两个包含名称的数据集。什么是子集df2的简单易变的pythonish方式,因此它仅包含df1所包含的行(名字,姓氏)。谢谢。

import pandas as pd

names1 = {
    'index' : [1, 2, 3], 
    'col1'  : ['John', 'Jerry', 'John'],
    'col2'  : ['Doe', 'Peters', 'Smith']
}




names2 = {
    'index' : [1, 2, 3, 4], 
    'col1'  : ['John', 'Bob','Jerry', 'John'],
    'col2'  : ['Smith', 'Lacko', 'Peters', 'Nowak'],
    'col3'  : [12, 13, 14, 15]
}


df1 = pd.DataFrame(names1).set_index(["index"])
df2 = pd.DataFrame(names2).set_index(["index"])

print(df1,'\n')
print(df2)

        col1    col2
index               
1       John     Doe
2      Jerry  Peters
3       John   Smith 

        col1    col2  col3
index                     
1       John   Smith    12
2        Bob   Lacko    13
3      Jerry  Peters    14
4       John   Nowak    15

所需的输出:

       col1   col2   col3
index                     
1      John   Smith    12
3      Jerry  Peters   14
耶斯列尔

使用reset_index之前merge,然后set_index

df = df2.reset_index().merge(df1).set_index('index')
print (df)
        col1    col2  col3
index                     
1       John   Smith    12
3      Jerry  Peters    14

因为仅merge丢失原始索引值:

print (df2.merge(df1))
    col1    col2  col3
0   John   Smith    12
1  Jerry  Peters    14

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据唯一值和其他列数据对数据框进行子集设置

如何对数据框的两列进行分组并将其他列转换为以列标题为键的dict

根据列对数据框中的日期进行排序,并使用Pandas保持其他列的值

通过其他列按升序对数据框进行排序

根据其他数据框中的列表对数据框进行子集化

基于 R 中的相似性对数据框中的行/列进行子设置

对数据框的两列进行逻辑运算

如何通过比较两列对数据框进行排序

Pandas - 如何对数据框的子列进行分组?

使用其他两列对熊猫数据框中的列进行排序

用条件其他列数据框替换列值

Pandas数据框如何对数字列的bin进行分组,然后计算其他二进制列

基于列对数据框进行分组

如何对数据框列进行lemmatise

逐行对数据框列进行排序

按列对数据框进行排序

如何对数据框列进行排名

还有其他方法可以按日期(年月)对数据框列值进行排序

根据其他数据框用 TRUE 或 FALSE 填充列

根据其他数据框中的两列过滤数据框

如何相对于其他数据框列顺序对 r 数据框的列名进行排序

获取每个单独列的总和的数据框,然后与其他数据框进行比较

对数据框进行转换

使用其他数据框的某些列创建数据框

根据其他数据框的列映射数据框

根据其他数据框过滤熊猫数据框列

将一个数据框中的一列与不同数据框中的其他两列进行比较?

在数据框中的列中对数据进行分类

如何使用 Sk-learn OneHotEncoder 对数据框中的两列或更多列进行编码?