Проверьте вашу первую строку в вашем файле .sav
Если вы хотите прочитать данные как информационный фрейм в Pandas.
Файл имеет следующий формат
a b c d
0 1 2 3 4 5
1 2 3 4 5 6
Когда вы читаете его с помощью Pandas, вы получаете следующий фрейм данных
a b c d
0 1 2 3 4 5
1 2 3 4 5 6
Когда я выполняю print df.columns, я получаю что-то вроде:
Index([u'a', u'b', u'c', u'd'], dtype='object')
И когда я выполняю печать df.iloc[0]
, я получаю:
a 2
b 3
c 4
d 5
Name: (0, 1)
Полагаю, вы хотели бы иметь такой кадр данных, как этот
a b c d col1 col2
0 1 2 3 4 5
1 2 3 4 5 6
Возможное решение:
Один из способов сделать это - прочитать данные дважды. Один раз с пропуском первой строки (исходных столбцов), а второй - только с прочитанными именами столбцов (и пропущены все строки)
df = pd.read_csv(header=None, skiprows=1)
columns = pd.read_csv(nrows=0).columns.tolist()
columns
Output
['a', 'b', 'c', 'd']
Теперь найдите количество пропущенных столбцов и используйте понимание списка, чтобы создать новые столбцы
num_missing_cols = len(df.columns) - len(columns)
new_cols = ['col' + str(i+1) for i in range(num_missing_cols)]
df.columns = columns + new_cols
df
a b c d col1 col2
0 0 1 2 3 4 5
1 1 2 3 4 5 6