gpt4 book ai didi

python - 生成 pandas Series 或 DataFrame 中的组组合

转载 作者:行者123 更新时间:2023-12-01 05:47:53 24 4
gpt4 key购买 nike

我有一个 pandas DataFrame 设置如下:

 Type     time
A 0
A 1
A 2
B 0
B 1
B 2

我需要生成一个结构如下的列表(或系列):

["A.1-A.0", "A.2-A.0", "B.1"-"B.0", "B.2"-"B.0"]

groupby 或类似的函数能够生成这样的列表(或系列)吗?

最佳答案

import pandas as pd
from StringIO import StringIO

data = StringIO("""Type time
A 0
A 1
A 2
B 10
B 11
B 12""")
df = pd.read_csv(data, delim_whitespace=True, dtype="O")

def set_first(x):
x["ptime"] = x.time.values[0]
x = x[1:]
r = x.Type + "." + x.time + "-" + x.Type + "." + x.ptime
return r

print df.groupby(df.Type, group_keys=False).apply(set_first)

输出:

1      A.1-A.0
2 A.2-A.0
4 B.11-B.10
5 B.12-B.10

关于python - 生成 pandas Series 或 DataFrame 中的组组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15496454/

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