Как заполнять списки списков, если отсутствуют какие-либо ключи и значения? - PullRequest
0 голосов
/ 31 октября 2019

У меня есть список списков с «ключом и значениями» внутри. Но он пропускает один ключ списка и значение. [[a,1],[b,2][c,3] BLANK [e,5]] Как заполнить этот пробел между c и e, если у меня есть фиксированные ключи, которые идут один за другим по циклу, на самом деле это не должен быть словарь, мне просто нужно заполнить данные в качестве ключа и данные Nan, чтобы преобразовать их в правильныеДатафрейм с любым кодом. Подробнее о списках данных здесь https://pastebin.com/dyRKFN7m

Я уже пытался объединить данные, но в словаре пропущена пустая пара ключей.

python3
n = len(columns)
ndf = pd.concat([pd.DataFrame([df['data'][i:i+n].tolist()]) for i in range(0, len(df), n)], ignore_index=True)

Этот код также не работает

d = dict()
last = None
for i, l in enumerate(string.letters_lowercase):
    if l not in d and last is None:
        last = i
    else:
        d.update(dict.from_keys(letters[last:i], 'missing')
        last = None
Expected result is in pastebin link upside

1 Ответ

0 голосов
/ 31 октября 2019

Я предлагаю вам это. Я просмотрел ваши прошлые данные, поскольку они, похоже, полны опечаток

fixed_keys = ['client_id', 'income', 'outcome', 'sender_bin', 'receiver_bin', 'sender_name', 'receiver_name', 'comment']

data = [["client_id", "1007896"], 
["income", "7896.3"], 
["outcome", "98933.2"], 
["sender_bin", "9999968999"], 
["receiver_bin", "136988966"], 
["sender_name", "Client1"], 
["receiver_bin", "Our Bank"], 
["comment", "Monthly Payment for goods"], 
["client_id", "1002587"], 
["income", "0"], 
["outcome", "6989"], 
["sender_bin", "9968996398"], 
["receiver_bin", "136988966"], 
["sender_name", "client3"], 
["receiver_bin", "Our Bank"], 
["comment", "Goods delivered"], 
["client_id", "1009635"], 
["income", "986.5"], 
["outcome","0"], 
["sender_bin", "136988966"], 
["sender_name", "Account manager Beatrice"], 
["receiver_bin", "Our Bank"], 
["comment", "income from cash collection"]]


for key in fixed_keys:
  isHere = False
  for pair in data:
    if key == pair[0]:
      isHere = True
  if(not(isHere)):
    data.append([key, "Nan"])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...