gpt4 book ai didi

python - 获取与关键字匹配的每个数据框单元格的内容

转载 作者:行者123 更新时间:2023-12-01 07:38:59 25 4
gpt4 key购买 nike

搜索数据帧的每个单元格并查看该单元格是否包含关键字列表中的值的正确方法是什么?下面的示例很简短......真正的数据框架可以有任意数量的列/行并包含空值。我知道这是不正确的,但起点在这里:

import pandas as pd

myKeywords = ['apple', 'banana', 'orange']
myData = [['apple',10],['coconut',12],['donut',13],['I love apples',13]]
myDf = pd.DataFrame(myData,columns=['colOne','colN'],dtype=float)
print myDf

def findAll(keywordList, df):
return df[(df.values.ravel() in keywordList).reshape(df.shape).any(1)]

result = findAll(myKeys, myDf)
print result

# 我希望它只打印值“apple”和“I love apples”

最佳答案

我使用df.values.ravel().astype(str)获取所有单元格中的所有值作为常规列表,然后我根据 any 对其进行过滤查看关键字是否是某个值的子字符串。

试试这个:

import pandas as pd

myKeywords = ['apple', 'banana', 'orange']
myData = [['apple',10],['coconut',12],['donut',13],['I love apples',13]]
myDf = pd.DataFrame(myData,columns=['colOne','colN'],dtype=float)

def findAll(keywordList, df):
return [value for value in df.values.ravel().astype(str) if any(word in value for word in keywordList)]

result = findAll(myKeywords, myDf)
print(result)

输出:

['apple', 'I love apples']

关于python - 获取与关键字匹配的每个数据框单元格的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56820519/

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