gpt4 book ai didi

python - 合并两个 Pandas 数据框

转载 作者:太空宇宙 更新时间:2023-11-03 13:34:31 24 4
gpt4 key购买 nike

这个问题我见过几次,但答案对我不起作用。我有两个数据框,split_dfcsv_df,我试图将它们合并到一个名为 key 的列上。

这是 split_df 的前 5 项

        key        tags
2785 30000 ipv6
2785 30000 networking
2785 30000 wireless
2785 30000 standards
2785 30000 satcom

这是 csv_df

中的前 5 项
     key
0 30000
1 30002
2 31288
3 33630
4 31663

当我运行这个合并语句时:

common_df = pd.merge(split_df,csv_df, on=['key'], suffixes=('_left', '_right'))

我得到:

Empty DataFrame
Columns: [key, tags]
Index: []

进程结束,退出代码为 0

我不明白为什么合并对我不起作用。有什么建议吗?

我在两者上都有索引(并且也运行了与它们的合并)

csv_df.set_index('key')
split_df.set_index('key')

我对 Pyton 和 Pandas 很陌生

谢谢!

最佳答案

从上面的代码来看,这对我有用:

In [11]: pd.merge(split_df,csv_df, on=['key'], suffixes=('_left', '_right'))
Out[11]:
key tags
0 30000 ipv6
1 30000 networking
2 30000 wireless
3 30000 standards
4 30000 satcom

我怀疑列类型 key 在您的数据框中不同(在我的数据框中是相同的 int)。

很可能其中一个是字符串(另一个是 float /整数)。

In [12]: split_df["key"] = split_df["key"].apply(str)

In [13]: pd.merge(split_df,csv_df, on=['key'], suffixes=('_left', '_right'))
Out[13]:
Empty DataFrame
Columns: [key, tags]
Index: []

如果它们都是字符串:

In [14]: csv_df["key"] = csv_df["key"].apply(str)

In [15]: pd.merge(split_df,csv_df, on=['key'], suffixes=('_left', '_right'))
Out[15]:
key tags
0 30000 ipv6
1 30000 networking
2 30000 wireless
3 30000 standards
4 30000 satcom

关于python - 合并两个 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41861705/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com