如何操作字典列表的数据帧?

2024-10-05 14:29:13 发布

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

嘿,伙计们,所以我一直在使用一个csv文件的数据,并已将该数据放入熊猫数据帧。原始数据有6列,其中一列称为“actions”是字典列表。我已经做了一个临时数据帧这样做-

temp = pd.DataFrame(dataframe['actions'])

这是新数据帧中的一个示例行-

[{"E": 24, "action": "views"}, {"F": 22, "action": "noise"}, {"H": 39, "action": "conversions"}]

我不知道如何处理这些数据。我想得到一个实例列表,比如说'E'的值更高,其中'action'是'views',而'E'的'action'是'conversions'。数据帧中后续行中的键并不是每行都存在。你知道吗

编辑预期的输出不一定是另一个数据帧,但可能只是符合条件的单个字母键的python列表。更明确地说,我想搜索整个数据帧,比较两种特定类型的操作的实例,然后比较数值。因此,如果我的条件是只有当操作是'views'和'conversions'时,它才会寻找相同的单字母键的实例,比如

"E" {"E": 24, "action": "views"} and {"E": 45, "action": "conversions"}

或为

"A" {"A": 12, "action": "views"} and {"A": 28, "action": "conversions"}.

当然可以出现在数据框的不同行上。因此,在我建议的函数的末尾,它将返回满足条件的单字母字符串列表。你知道吗

df的样本是这样的-

0,"[{""E"": 24, ""action"": ""views""}, {""F"": 22, ""action"": ""noise""}, {""H"": 39, ""action"": ""conversions""}]"

1,"[{""B"": 79, ""action"": ""clicks""}, {""H"": 3, ""action"": ""conversions""}, {""G"": 68, ""action"": ""junk""}]"

2,"[{""E"": 10, ""action"": ""views""}, {""D"": 41, ""action"": ""views""}, {""J"": 52, ""action"": ""conversions""}]"

3,"[{""A"": 47, ""action"": ""clicks""}, {""E"": 93, ""action"": ""junk""}, {""D"": 54, ""action"": ""views""}]"

4,"[{""H"": 16, ""action"": ""views""}, {""G"": 41, ""action"": ""conversions""}, {""C"": 80, ""action"": ""junk""}]"

有希望的例子结果

['H']

因为第0行中的“H”有一个字典{“H”:39,“action”:“conversions”},它的数值比第4行的{“H”:16,“action”:“views”}大,因为我们要查找的是“conversions”操作的值比同一个字母键“H”的“views”操作的值大的地方。你知道吗


Tags: and数据实例actions列表字典actionviews