DataFrame是空的,期望在i中有数据

2024-06-16 11:27:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在Excel中找到两行内的重复项。例如,我的Excel包括:

    list_A  list_B
0   ideal   ideal
1   brown   colour
2   blue    blew
3   red     red

我查看了pandas文档并尝试了复制方法,但我不知道为什么它总是说“DataFrame是空的”。它找到了两列,我猜它是在上面迭代的,但是为什么不找到值并比较它们呢?你知道吗

我也试过使用iterrows,但我真的不知道如何实现它。你知道吗

运行代码时,我得到以下输出:

空数据帧

列:[列表A,列表B]

索引:[]

import pandas as pd

pt = pd.read_excel(r"C:\Users\S531\Desktop\pt.xlsx")
dfObj = pd.DataFrame(pt)
doubles = dfObj[dfObj.duplicated()]      
print(doubles)

我想要的结果是:

    list_A  list_B
0   ideal   ideal
3   red     red

最终解决的代码如下所示:

import pandas as pd

pt = pd.read_excel(r"C:\Users\S531\Desktop\pt.xlsx")
doubles = pt[pt['list_A'] == pt['list_B']]
print(doubles)

Tags: 代码importptdataframepandas列表readas
1条回答
网友
1楼 · 发布于 2024-06-16 11:27:33

术语“duplicate”通常用于表示与前一行完全相同的行(参见pd.DataFrame.duplicate的文档)。你知道吗

您要查找的只是这两列相等的行。为此,您需要:

doubles = pt[pt['list_A'] == pt['list_B']]

相关问题 更多 >