网络编程
位置:首页>> 网络编程>> Python编程>> Pandas 按索引合并数据集的方法

Pandas 按索引合并数据集的方法

作者:BQW_  发布时间:2023-06-01 13:35:10 

标签:Pandas,索引,数据集

如下所示:


import numpy as np
import pandas as pd
from pandas import Series,DataFrame

一、merge函数


left1 = DataFrame({'水果':['苹果','梨','草莓'],
    '价格':[3,4,5],
    '数量':[9,8,7]}).set_index('水果')
right1 = DataFrame({'水果':['苹果','草莓'],
    '产地':['美国','中国']})
print(left1)
print(right1)

价格 数量
水果  
苹果 3 9
梨 4 8
草莓 5 7
产地 水果
0 美国 苹果
1 中国 草莓

print(pd.merge(left1,right1,right_on='水果',left_index=True,how='outer'))

价格 数量 产地 水果
0 3 9 美国 苹果
1 4 8 NaN 梨
1 5 7 中国 草莓

二、DataFrame的join函数


left2 = left1
right2 = right1.set_index('水果')

1.join函数默认将两个DataFrame的index进行合并


print(left2.join(right2))

价格 数量 产地
水果    
苹果 3 9 美国
梨 4 8 NaN
草莓 5 7 中国

2.若其中一个DataFrame合并的键不在索引上,可使用on参数


print(right1.join(left1,on='水果',how='outer'))

产地 水果 价格 数量
0 美国 苹果 3 9
1 中国 草莓 5 7
1 NaN 梨 4 8

3.多个DataFrame按索引合并


another = DataFrame({'水果':['苹果','香蕉','梨'],
    '品质':['AA','AAAA','A']}).set_index('水果')

print(left2.join([right2,another],how='outer'))

 价格 数量 产地 品质
梨 4.0 8.0 NaN  A
苹果 3.0 9.0 美国 AA
草莓 5.0 7.0 中国 NaN
香蕉 NaN NaN NaN AAAA

来源:https://blog.csdn.net/bqw18744018044/article/details/79948493

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com