按键列连接

面向表格用户的 pandas 连接

John Miller

Principal Data Scientist

流程(续)

$$

在查看并理解数据后:

  • 判定关系类型
  • 检查键列是否唯一

方块

面向表格用户的 pandas 连接

唯一键列

$$ $$ 单列键的唯一性

df.duplicated('GameKey').sum()

$$ -- -- 返回 0 表示无重复 -- --

df.duplicated(['GameKey', 'PlayId']).sum()

单列索引

多列索引

面向表格用户的 pandas 连接

流程(续)

$$

在查看并理解数据后:

  • 判定关系类型
  • 检查键列是否唯一
  • 编写并执行合并语句

方块

面向表格用户的 pandas 连接

执行合并

$$

语句保持不变!

df1.merge(df2, how='inner', on='')

  • 注意各参数

$$

完整语法: DataFrame.merge(right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), indicator=False, validate=None)

面向表格用户的 pandas 连接

验证合并

DataFrame.merge(right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), indicator=False, validate=None)

$$

validate 的取值:

  • "one_to_one" 或 "1:1"
  • "one_to_many" 或 "1:m"
  • "many_to_one" 或 "m:1"
  • "many_to_many" 或 "m:m"(不生效)
面向表格用户的 pandas 连接

Passons à la pratique !

面向表格用户的 pandas 连接

Preparing Video For Download...