Создание нескольких пустых списков через запятую

Я пытаюсь записать какой-либо dataframe в CSV-файл. Однако столбцы с F по N должны быть пустыми. Это датафрейм, который я использую:

data = [['a'], ['b'], ['c'], ['d'], ['e'], ['o']]
dataFrame = pandas.DataFrame(data).transpose()

Буквы должны уточнить, под каким столбцом должны идти данные. Например, 'c' идет под столбцом C. Однако с текущей строкой 'o' идет под столбцом F. Есть ли способ сообщить этому dataFrame, что он должен пропустить столбцы F на N и записать 'o' под колонкой О?

Я предположил, что можно написать [], [], [] много раз, но это кажется немного ненужным. Есть ли умный способ сделать несколько пустых списков, разделенных запятой? Как в примере выше?

Спасибо за прочтение. Если что-то неясно, пожалуйста, дайте мне знать!

1 ответ

Решение

С данным кадром Pandas, то, что вы хотите, не возможно. Название Pandas происходит от "панельных данных". Таким образом, он построен на массивах NumPy, по одному для каждой серии или "столбца" данных. У вас не может быть "заполнителей" для серий, которые должны быть пропущены при экспорте в файл CSV или Excel.

Вы можете явно установить свой индекс равным значениям вашего информационного кадра, а затем использовать pd.DataFrame.reindex со списком писем. Если у вас более 26 столбцов, см. Получение имен столбцов в стиле Excel по номеру столбца.

import pandas as pd
from string import ascii_lowercase

data = [['a'], ['b'], ['c'], ['d'], ['e'], ['o']]

df = pd.DataFrame(data)
df.index = df[0]

df = df.reindex(list(ascii_lowercase)).T.fillna('')

print(df[list('abcdefg') + list('mnopqrs')])

0  a  b  c  d  e f g m n  o p q r s
0  a  b  c  d  e          o        
Другие вопросы по тегам