Создание нескольких пустых списков через запятую - PullRequest
0 голосов
/ 02 октября 2018

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

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

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

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

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

1 Ответ

0 голосов
/ 02 октября 2018

С фреймом данных 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        
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...