循环数据框中可变数量的列

问题描述 投票:0回答:1

我想使用 zip columns 技巧来加速 Pandas DataFrame 中的行循环,如下所示:

import pandas as pd

df = pd.DataFrame({"a": [0,1], "b": [2,3]})
for a, b in zip(df["a"], df["b"]):
    pass

数据框的列数是可变的。如何将行元组解压为 a、b、c 等?

python pandas
1个回答
0
投票

这是可能的方法之一,您可以从 DataFrame 创建一个系列列表,如下所示:

columns = [df[col] for col in df]

然后您可以解压此列表并在循环中使用它。

for item in zip(*columns):
    print(item)

输出将是这样的:

(0, 2)
(1, 3)

其中包含每行作为一个元组。

© www.soinside.com 2019 - 2024. All rights reserved.