【问题标题】:Python using two variables from pandas dataframe to iterate and get list of valuesPython 使用 pandas 数据框中的两个变量来迭代并获取值列表
【发布时间】:2022-02-04 20:00:28
【问题描述】:

我有一个看起来像这样的 pandas 数据框:

df =

Index 0 1 2 3
Sam 123 125 234 245
Mary 142 244 355 664
Tom 124 577 466 114
Mark 155 677 123 224

我想通过使用数据框中的每一对索引和一个项目来使用 for 循环。 idx,代码中的项目,我的意思是:(Sam, 123), (Sam, 125), (Sam, 234), (Sam, 245), (Mary, 142), (Mary, 244), (Mary, 355), (Mary, 664), (Tom, 124), ...., (Mark, 224)

list = []
for idx, item in df:
    new_list = [function1(idx), function2(item)]
    list.append(new_list)

也许使用来自数据帧的两个变量的 for 循环可能不是使用两个函数获取结果列表的最佳方法。任何提示都会非常有帮助。谢谢!

【问题讨论】:

标签: python pandas dataframe loops


【解决方案1】:

绝对不是有效的,但!!有效!!

l=[]
x=df.stack()
for i in range(len(x)):
     l.append([x.index[i][0],x[i]])
print(l)

输出:

[['Sam', 123], ['Sam', 125], ['Sam', 234], ['Sam', 245], ['Mary', 142], ['Mary', 244], ['Mary', 355], ['Mary', 664], ['Tom', 124], ['Tom', 577], ['Tom', 466], ['Tom', 114], ['Mark', 155], ['Mark', 677], ['Mark', 123], ['Mark', 224]]

【讨论】:

    猜你喜欢
    • 2021-09-17
    • 1970-01-01
    • 2023-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多