python - 如何找到我的 Pandas 数据框中的哪些列包含列表?

标签 python pandas

我在我的数据框上运行重复项,但我无法在包含列表的列上运行它。 我正在尝试创建一个函数,在删除重复项之前查找包含列表的列。

df1 = pd.DataFrame([[1,[1,2,3],1],[2,[2,3],2],[3,[3],3]], columns = ['a','b','c'])

    a   b           c
0   1   [1, 2, 3]   1
1   2   [2, 3]      2
2   3   [3]         [3,4]
cols = find_list_columns(df1)

cols 
['b','c']

最佳答案

使用applymapany

In [556]: df1.columns[df1.applymap(type).eq(list).any()]
Out[556]: Index(['b', 'c'], dtype='object')

正如@Ch3steR 推荐的那样

df1.applymap(lambda x: isinstance(x,list).any()

关于python - 如何找到我的 Pandas 数据框中的哪些列包含列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62600818/

相关文章:

python - 更准确地搜索文本中的字符串

python - 是否有一种快速的方法来填充间隙(可能是多个)之间的 NA 值,并且仅当间隙小于一定大小时?

python - Pandas DataFrame 选择具有 NaN 值的特定列

python遍历没有行的二进制文件

python - 有没有一种好方法可以将未知的 X 个列表压缩/合并在一起?

python - 理解BST、Python中序遍历的逻辑

python - 无效的 XML View 架构问题 - OpenErp

python - 动态存储API数据

python - Pandas str.contains - 在字符串中搜索多个值并在新列中打印这些值

python-3.x - pandas 中某列所有元素的乘积