【问题标题】:Looking for an efficient way to convert a dataframe (or matrix) to a triplet寻找一种将数据帧(或矩阵)转换为三元组的有效方法
【发布时间】:2022-12-05 11:00:25
【问题描述】:

我有一个示例数据框,如下所示,

import pandas as pd
import datetime

start = datetime.datetime.now()
print('Starting time,'+str(start))
dict1 = {'id':['person1','person2','person3'], \
         'person1':['A','','', ], \
         'person2':['B','E',''], \
         'person3':['C','F','G',], }
demo = pd.DataFrame(dict1)
demo
demo.set_index(["id"], inplace=True)
demo

我的目标格式如下,

    target_1    target_2    target
0   person1     person1       A
1   person1     person2       B
2   person1     person3       C
3   person2     person1       E
4   person2     person2       F
5   person3     person3       G

现在我想把它变成三重奏,我可以想到使用循环来遍历每个元素,但我认为这可能效率不高,尤其是对于大型数据集,因为我是 python 新手,所以我想找到一种更高效的方法。

任何帮助表示赞赏。

【问题讨论】:

    标签: python pandas


    【解决方案1】:
    for i in demo.index.tolist():
        for j in demo.columns.values.tolist():
            print(demo.loc[i][j])
    

    【讨论】:

      猜你喜欢
      • 2021-02-01
      • 1970-01-01
      • 2015-04-14
      • 2018-12-28
      • 2015-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多