python数据分析 [1]「如何用pandas实现vlookup功能」

最近在带着女票学习python做一些数据处理和数据可视化的东西,顺便整理成笔记,如果有朋友能受益也是好事一件

'''

import pandas as pd

import numpy as np

# 首先需要讲pandas还有numpy两个模块导入

df1 = pd.DataFrame({'key':['b','b','a','c','a','a','b'],

                    'data1':range(7)})

df2 = pd.DataFrame({'key':['a','b','d'],

                    'data2':range(3)})

# 建立两个示例

# print(df1)

# print(df2)

"""

如果没有指定,merge就会将重叠列的列名当做键

"""

df3 = pd.merge(df1,df2)

# print(df3)

# 也可以用on来指定键

df4 = pd.merge(df1,df2,on ='key')

# 再次建立示例(键名不统一的情况)

df5 = pd.DataFrame({'lkey': ['b', 'b', 'a', 'c', 'a', 'a', 'b'],'data1':range(7)})

df6 = pd.DataFrame({'rkey': ['a', 'b', 'd'],'data2':range(3)})

'''

如果两个对象的列名不同,也可以分别进行指定

'''

df7 = pd.merge(df5,df6,left_on ='lkey',right_on ='rkey')# 分别指定的列名

# print(df7)

"""

外连接

"""

df8 = pd.merge(df1,df2,how ='outer')

# print(df8)

"""

左连接

"""

df9 = pd.merge(df1, df2, on='key', how='left')

print(df9)

new_df1 = pd.DataFrame({'key': ['b', 'b', 'a', 'c', 'a', 'b'],'data1':range(6)})

new_df2 = pd.DataFrame({'key': ['a', 'b', 'a', 'b', 'd'],'data2':range(5)})

left_join_df = pd.merge(new_df1,new_df2,on ='key',how ='left')

# print(left_join_df)

'''

上述是代码,大家如有问题随时留言或者+V 13776553323

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容