在列表中分别获取每个熊猫数据框的列名称

时间:2020-09-24 10:16:57

标签: python pandas

我有一个pandas数据框,想分别提取每个列名称,并将其附加在列表中。

我尝试过这样的事情:

def get_hist_data(data):
    # create an empty list
    histdata = []
    for col in data.columns:
        test_list = "data['{}']".format(col)
        histdata += [test_list]
    histdata = '[%s]' % ', '.join(map(str, histdata))

    return histdata

我得到的输出是一个列表,其中data现在是一个字符串:

[data['A'], data['B'],data['C']]

我不希望将data作为字符串,但希望将此作为我作为函数def get_hist_data(data):的参数传递的数据框,并且将在数据框内放置每个列名称。

我想要上面显示的相同输出,但是data不是字符串,而是一个数据帧,其中每个列名都将像data['A'], data['B']...一样放置

2 个答案:

答案 0 :(得分:0)

您可以使用df[col].to_list()

以列表的形式访问数据框的列
def get_hist_data(data):
    histdata = []
    for col in data.columns:
        histdata.append(data[col].to_list())
    return histdata

这将返回一个子列表列表,其中每个子列表都是原始data中的一列。

答案 1 :(得分:0)

您可以执行以下操作:-

void

此处的histdata将包含所有数据框。