要根据一个DataFrame中的一列数据,提取另一个DataFrame中包含此列数据的所有内容,可以使用pandas的merge函数。

假设我们有两个DataFrame,df1和df2,其中df1包含列"col1",而df2包含列"col2"。我们想要提取df2中包含df1中"col1"列数据的所有内容。

可以按照以下步骤进行操作:

  1. 使用merge函数将df1和df2根据"col1"列进行合并,指定参数how='inner',表示只保留两个DataFrame中都存在的行。
merged_df = pd.merge(df1, df2, left_on='col1', right_on='col2', how='inner')
  1. 此时,merged_df中就包含了df2中包含df1中"col1"列数据的所有内容。

完整的代码示例:

import pandas as pd

# 创建示例数据
data1 = {'col1': [1, 2, 3, 4, 5],
         'col3': ['a', 'b', 'c', 'd', 'e']}
df1 = pd.DataFrame(data1)

data2 = {'col2': [1, 3, 5, 7, 9],
         'col4': ['apple', 'banana', 'cherry', 'durian', 'elderberry']}
df2 = pd.DataFrame(data2)

# 使用merge函数进行合并
merged_df = pd.merge(df1, df2, left_on='col1', right_on='col2', how='inner')

print(merged_df)

输出结果为:

   col1 col3  col2      col4
0     1    a     1     apple
1     3    c     3    cherry
2     5    e     5  elderberry

在这个例子中,我们根据df1中的"col1"列和df2中的"col2"列进行合并,并只保留两个DataFrame中都存在的行。最终得到的merged_df中包含了df2中包含df1中"col1"列数据的所有内容。

pandas 根据一个dataframe中的一列数据提取另一个dataframe中包含此列数据的所有内容

原文地址: https://www.cveoy.top/t/topic/i3yv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录