使用考拉将 name_data 数据框中特定列中存在的值的两个数据框连接起来
Join two dataframes on the values present in a specific column in the name_data dataframe using koalas
我正在尝试在 name_data
数据帧中存在的 code
列值上连接两个数据帧,如下所示。
我有两个数据框如下所示,我希望得到一个结果数据框,它只包含来自`team_datadataframe where the corresponding
codevalue column is present in the
name_data`的行`` 数据框。
我在数据块上为此使用考拉,我有以下使用连接操作的代码。
import databricks.koalas as ks
name_data= ks.DataFrame({'code':['123a', '345b', '678c'],
'id':[1, 2, 3]})
team_data = ks.DataFrame({'code':['123a', '23s', '34a'],
'id':[1, 2, 3]})
team_data_filtered = team_data.join(name_data.set_index('code'), on='code')
display(team_data_filtered)
预期的输出将是仅在 team_data_filtered
.
中看到以下内容
Code id
'123a' 1
但是我的代码抛出一个错误,指出 columns overlap but no suffix specified: ['id']
.
有人可以帮助解决这个问题吗?
尝试添加后缀参数:
team_data_filtered = team_data.join(name_data.set_index('code'), on='code',
lsuffix='_1', rsuffix='_2')
team_data_filtered = team_data_filtered.loc[team_data_filtered.id_1==team_data_filtered.id2]
display(team_data_filtered)
然后根据需要清理列:
team_data_filtered.rename({'id_1':'id'}, inplace=True, axis=1)
我正在尝试在 name_data
数据帧中存在的 code
列值上连接两个数据帧,如下所示。
我有两个数据框如下所示,我希望得到一个结果数据框,它只包含来自`team_datadataframe where the corresponding
codevalue column is present in the
name_data`的行`` 数据框。
我在数据块上为此使用考拉,我有以下使用连接操作的代码。
import databricks.koalas as ks
name_data= ks.DataFrame({'code':['123a', '345b', '678c'],
'id':[1, 2, 3]})
team_data = ks.DataFrame({'code':['123a', '23s', '34a'],
'id':[1, 2, 3]})
team_data_filtered = team_data.join(name_data.set_index('code'), on='code')
display(team_data_filtered)
预期的输出将是仅在 team_data_filtered
.
Code id
'123a' 1
但是我的代码抛出一个错误,指出 columns overlap but no suffix specified: ['id']
.
有人可以帮助解决这个问题吗?
尝试添加后缀参数:
team_data_filtered = team_data.join(name_data.set_index('code'), on='code',
lsuffix='_1', rsuffix='_2')
team_data_filtered = team_data_filtered.loc[team_data_filtered.id_1==team_data_filtered.id2]
display(team_data_filtered)
然后根据需要清理列:
team_data_filtered.rename({'id_1':'id'}, inplace=True, axis=1)