Сбросить положение столбца CSV с помощью панд - PullRequest
0 голосов
/ 21 сентября 2018

Я читаю CSV-файл в фрейме данных

data = pd.read_csv(file, sep="\x01", header=None)

Вставить рундирование в качестве столбца в этом фрейме данных

data["rundate"] = inpdate

По умолчанию этот столбец рундата добавляется в качестве последнего столбца.хочу переиндексировать его и поместить в качестве первого столбца.

В настоящее время, когда я делаю print(data.columns), я получаю следующий вывод

Index([        0,         1,         2,         3,         4,         5,
               6,        'rundate'],
      dtype='object')

Что я хочу, это

Index([        'rundate',    0,         1,         2,         3,         
                  4,         5,         6,],
      dtype='object')

Все примеры, которые я вижу в Интернете, имеют фиксированный набор столбцов, как показано ниже:

columnsTitles = ['year', 'reports', 'county']
df.reindex(columns=columnsTitles)

Сгенерированные мной столбцы получены при динамическом чтении файлов csv.Любой другой способ, которым я могу заставить рундат появиться как первый столбец?

1 Ответ

0 голосов
/ 21 сентября 2018

Может быть, вы можете попробовать с insert, тогда новый столбец будет вставлен в первый:

data.insert(0, 'rundate', inpdate)

Или вы можете изменить порядок столбцов, передав список имен столбцов так, чтобы последний столбец был первыми оставшиеся после него добавляются:

data = data[data.columns[-1:].tolist()+data.columns[:-1].tolist()]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...