конвертировать записи записей в виде отдельных строк в разные столбцы в блокноте jupyter с заголовками? # Python # Блокнот Jupyter - PullRequest
0 голосов
/ 05 июля 2019

У меня есть текстовый файл, который неструктурирован.Я импортировал его в блокнот jupyter и пытаюсь создать 10 столбцов из этой строки, используя панд в блокноте jupyter.Например:
0 product / productId: B000GKXY4S
1 product / title: Crazy Shape Scissor Set
2 product / price: unknown
3 review / userId: A1QA985ULVCQOB
4 review / profileName:Carleen M. Amadio "Lady Dr ...
5 обзор / полезность: 2/2
6 обзор / оценка: 5,0
7 обзор / время: 1314057600
8 обзор / резюме: Развлечения для взрослыхтоже!
9 рецензия / текст: мне очень нравятся эти ножницы для ...
10
11 product / productId: B000GKXY4S
12 product / title: Crazy Shape Scissor Set
13 product /цена: неизвестно
14 отзыв / userId: ALCX2ELNHLQA7
15 обзор / профильИмя: Барбара
16 отзыв / полезность: 0/0
17 обзор / оценка: 5.0
18 обзор / время: 1328659200
19 рецензия / резюме: Создание надреза!
20 рецензия / текст: Осмотрели все в художественном оформлении и ...
21
22 product / productId: B000140KIW
23 product / title: Fiskars Softouch Multi-Purpose ...
24 товар / цена: неизвестно
25 отзыв / userId: A2M2M4R1KG5WOL
26обзор / profileName: L. Heminway
27 обзор / полезность: 1/1
28 обзор / оценка: 5,0
29 обзор / время: 1156636800
30 обзор / резюме: Fiskars Softouch Multi-Purpose...
31 рецензия / текст: Это ЛУЧШИЕ ножницы, которые у меня есть ...
32

Вывод: Я хотел бы, чтобы 10 столбцов с каждым из соответствующих значений были представлены в виде строк

1 Ответ

0 голосов
/ 05 июля 2019

Мы можем split ваш фрейм данных на :, затем развернуть его до столбцов и использовать groupby, чтобы получить значения для столбцов.Наконец, мы создаем фрейм данных с pd.DataFrame, архивируя имена столбцов со значениями:

m = df['COL'].str.split(':', expand=True)\
              .groupby(0)[1].apply(list).reset_index()

df = pd.DataFrame(dict(zip(m[0], m[1])))
# print first 6 columns, cause rest doesnt fit on screen
print(df.iloc[:, :6])


  product/price product/productId                        product/title review/helpfulness              review/profileName review/score
0       unknown        B000GKXY4S              Crazy Shape Scissor Set                2/2   Carleen M. Amadio "Lady Dr...          5.0
1       unknown        B000GKXY4S              Crazy Shape Scissor Set                0/0                         Barbara          5.0
2       unknown        B000140KIW   Fiskars Softouch Multi-Purpose ...                1/1                     L. Heminway          5.0
...