我有 2 个数据帧:
df1=
State Code
Alabama AL
Alaska AK
American Samoa AS
Arizona AZ
Arkansas AR
df2=
State PREVAILING_WAGE
CALIFORNIA 102170.0
DELAWARE 97531.0
SOUTH CAROLINA 96824.0
WASHINGTON 89586.0
OREGON 88234.0
现在,当我尝试合并两者时,如果它们使用:
df1.merge(df2,left_on='State',right_on='State',how='left')
我在合并表中得到 NaN 值,如下所示:
State PREVAILING_WAGE Code
CALIFORNIA 102170.0 NaN
DELAWARE 97531.0 NaN
SOUTH CAROLINA 96824.0 NaN
WASHINGTON 89586.0 NaN
OREGON 88234.0 NaN
我也检查了 dtype,它们都是对象或 str。我该如何解决这个问题?
谢谢
编辑:数据帧包含所有状态名称,因此它们具有要匹配的通用内容。
如果使用左连接,如果 df2。状态值在 df1 中不存在。状态,它将在代码中返回 NaN,这意味着没有匹配项。
我将检查 State 列中的每个字符串后面是否有任何额外的空格,并确保所有值都是大写并转换为 str
.