具有自定义函数的 GroupBy Python
GroupBy Python with a custom function
我需要改造我的 DF。
我有很多其他行:
3 21-TV-0515 ACACIAS 21-TV-0515
4 21-TV-0515 ACACIAS 22-TV-0219
我发现:
ACACIAS 21-TV-051521-TV-0515 21-TV-051522-TV-0219
当我使用该代码时:
ConcordanceMAPNOVA.groupby('Acronyme').sum()
但其实我想要这样的东西:
ACACIAS 21-TV-0515 21-TV-0515, 22-TV-0219
or ACACIAS [21-TV-0515] [21-TV-0515, 22-TV-0219]
你知道这是否可能吗?
问题不是很清楚,但我想你想聚合并保留唯一值,对吧?在那种情况下,你可以这样做:
import pandas as pd
df = pd.DataFrame({"col1": ["21-TV-0515", "21-TV-0515"], "Acronyme": ["ACACIAS", "ACACIAS"], "col2": ["21-TV-0515", "22-TV-0219"]})
df.groupby("Acronyme").agg(set)
或者(如果你想要一个列表而不是一个集合):df.groupby("Acronyme").agg(lambda x: list(set(x)))
我需要改造我的 DF。 我有很多其他行:
3 21-TV-0515 ACACIAS 21-TV-0515
4 21-TV-0515 ACACIAS 22-TV-0219
我发现:
ACACIAS 21-TV-051521-TV-0515 21-TV-051522-TV-0219
当我使用该代码时:
ConcordanceMAPNOVA.groupby('Acronyme').sum()
但其实我想要这样的东西:
ACACIAS 21-TV-0515 21-TV-0515, 22-TV-0219
or ACACIAS [21-TV-0515] [21-TV-0515, 22-TV-0219]
你知道这是否可能吗?
问题不是很清楚,但我想你想聚合并保留唯一值,对吧?在那种情况下,你可以这样做:
import pandas as pd
df = pd.DataFrame({"col1": ["21-TV-0515", "21-TV-0515"], "Acronyme": ["ACACIAS", "ACACIAS"], "col2": ["21-TV-0515", "22-TV-0219"]})
df.groupby("Acronyme").agg(set)
或者(如果你想要一个列表而不是一个集合):df.groupby("Acronyme").agg(lambda x: list(set(x)))