gpt4 book ai didi

python - 对整个数据集重复相同的过程

转载 作者:太空宇宙 更新时间:2023-11-03 13:06:36 25 4
gpt4 key购买 nike

给定数据帧 df:

        1           1.1     2           2.1     ...     1600      1600.1
0 45.1024 7.2365 45.8769 7.1937 34.1072 8.4643
1 43.1024 8.9645 32.5798 7.7500 33.1072 9.3564
2 42.1024 6.7498 25.1027 7.3496 26.1072 6.3665

我做了以下操作:我选择了第一个(1 and 1.1) 对并创建了一个数组。然后我对以下一对 (2 和 2.1) 做了同样的事情。

x = df['1']
y = df['1.1']
P = np.array([x, y])

q = df['2']
w = df['2.1']
Q = np.array([q, w])

最终操作是:

Q_final = list(zip(Q[0], Q[1]))
P_final = list(zip(P[0], P[1]))

现在我想对整个数据集执行此操作。但这需要很多时间。知道如何快速迭代吗?

已编辑

毕竟我在做

df = similaritymeasures.frechet_dist(P_final, Q_final)

所以我想获得一个包含所有列组合的新数据集(也许)

最佳答案

一个简单的方法是在轴 1 上使用 agg

def f(s):
s = iter(s)
return list(zip(s,s))

agg = df.agg(f,1)

然后要检索,使用.str。例如,

agg.str[0] # P_final
agg.str[1] # Q_final
.
.
.

此外,groupby 是否可以跨越 axis=1,假设您需要每对列

df.groupby(np.arange(len(df.columns))//2, axis=1).apply(lambda s: s.agg(list,1))  

关于python - 对整个数据集重复相同的过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57558232/

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