我有一个来自pandas的数据框,现在我想添加列名,但仅用于第二行。这是我先前输出的示例:

python - 如何在pandas数据帧的第二行中添加列标题?-LMLPHP

所需的输出:

python - 如何在pandas数据帧的第二行中添加列标题?-LMLPHP

我的代码:

data_line=open("file1.txt", mode="r")

lines=[]
for line in data_line:
    lines.append(line)
for i, line in enumerate(lines):
    # print('{}={}'.format(i+1, line.strip()))
    file1_header=lines[0]
num_line=1
Dictionary_File1={}
Value_File1= data_type[0:6]
Value_File1_short=[]
i=1
for element in Value_File1:
    type=element.split(',')
    Value_File1_short.append(type[0] + ", " + type[1] + ", " + type[4])
    i += 1
Dictionary_File1[ file1_header]=Value_File1_short
pd_file1=pd.DataFrame.from_dict(Dictionary_File1)

最佳答案

您应该看看DataFrame.read_csvheader关键字参数使您可以指示文件中用于标题名称的一行。

您可能可以通过以下方式进行操作:

pd.read_csv("file1.txt", header=1)


在我的python shell中,我使用以下命令进行了测试:

>>> from io import StringIO # I use python3
>>> import pandas as pd
>>> >>> data = """Type    Type2   Type3
... A           B   C
... 1           2   3
... red     blue    green"""
>>> # StringIO below allows us to use "data" as input to read_csv
>>> # "sep" keyword is used to indicate how columns are separated in data
>>> df = pd.read_csv(StringIO(data), header=1, sep='\s+')
>>> df
     A     B      C
0    1     2      3
1  red  blue  green

07-28 03:45
查看更多