создать таблицу данных из списка - PullRequest
0 голосов
/ 05 марта 2020

Я хочу создать фрейм данных из существующих списков (каждая строка файла будет записана в фрейме данных.

with open(filename, mode='r', encoding='cp1252') as f: 
    lines=f.readlines()
    liste1 = str(lines[0]) 
    df1 = pd.DataFrame(liste1)

, кто может мне помочь? Ниже 3 первых строк файла f1.

[‘x1’, ‘major’, ’1198’,  ‘TCP’]
[‘x1’, ‘minor’, ‘1198’,  ‘UDP’]
[‘x2’, ‘major’, ’1198’, ‘UDP’]

1 Ответ

0 голосов
/ 05 марта 2020

Если я правильно понимаю, хотите, чтобы каждая строка в DataFrame была строкой, которую вы читаете из строки в файле?

Обратите внимание, что liste в вашем случае является строкой, поэтому я не уверен что вы собираетесь

Этот подход должен работать в любом случае.

import pandas as pd
df1 = pd.DataFrame()
with open(filename, mode='r', encoding='cp1252') as f: 
    lines=f.readlines()
    liste1 = str(lines[0]) 
    df1 = df1.append(pd.Series(liste1), ignore_index=True)

Так что если liste1 имеет форму

> "This is a string"

, тогда ваш DataFrame будет выглядеть следующим образом

df1.head()

       0
0  This is a string

если liste1 имеет форму

> ["This", "is", "a", "list"]

, тогда ваш DataFrame будет выглядеть так

df1.head()

      0   1  2     3
0  This  is  a  list

Затем вы можете вызывать эту append() процедуру столько раз, сколько захотите внутри al oop.

Однако я подозреваю, что есть функция, такая как pd.read_table(), которая может сделать все это для вас автоматически (как @jezrael предложила в комментариях к вашему вопросу).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...