簡體   English   中英

將字符串(管道分隔)轉換為 Pandas 中的 df

[英]Convert String(pipe delimited) to a df in Pandas

我有以下字符串(管道分隔),我正在嘗試將其轉換為 pandas 中的 df 但失敗了,你們能幫幫我嗎

list = 'PP_AACD_NR_D8706_TIHIBRIDA_PROC_EXCUC_D|PP_AACE_R4539_BACEN|PP_AACE_R4539_CARGA_INT|PP_AACE_R4539_CONS_JUNC|PP_AACE_R4539_FMRC_TD_01'

我嘗試了一些東西,但都沒有奏效:

df1 = pd.DataFrame(list)

還:

from csv import reader
df=pd.DataFrame( list(reader(list)))

和其他事情,我想要實現的是這樣的df:

column_name
PP_AACD_NR_D8706_TIHIBRIDA_PROC_EXCUC_D
PP_AACE_R4539_BACEN
PP_AACE_R4539_CARGA_INT
PP_AACE_R4539_CONS_JUNC
PP_AACE_R4539_FMRC_TD_01

您需要將字符串拆分為| 進入列表

df = pd.DataFrame({'column_name': list.split('|')})
print(df)

                               column_name
0  PP_AACD_NR_D8706_TIHIBRIDA_PROC_EXCUC_D
1                      PP_AACE_R4539_BACEN
2                  PP_AACE_R4539_CARGA_INT
3                  PP_AACE_R4539_CONS_JUNC
4                 PP_AACE_R4539_FMRC_TD_01

你可以試試這個:

lst = lst.split('|')
df = pd.DataFrame({'column_name': lst})
print(df)

你需要用'|'分割你的str 分隔符如:

import pandas as pd

l = 'PP_AACD_NR_D8706_TIHIBRIDA_PROC_EXCUC_D|PP_AACE_R4539_BACEN| \
    PP_AACE_R4539_CARGA_INT|PP_AACE_R4539_CONS_JUNC|PP_AACE_R4539_FMRC_TD_01'

df = pd.DataFrame(l.split('|'), columns=['col_1'])

print(df)

output:

                                     col_1
0  PP_AACD_NR_D8706_TIHIBRIDA_PROC_EXCUC_D
1                      PP_AACE_R4539_BACEN
2                  PP_AACE_R4539_CARGA_INT
3                  PP_AACE_R4539_CONS_JUNC
4                 PP_AACE_R4539_FMRC_TD_01

還要避免使用通用名稱作為變量的名稱,這可能會導致一些問題(例如:list、dict、...)

首先,不要使用內置名稱list 您可以使用.split()拆分以管道分隔的字符串

例如:

split_list = a.split("|")

這將為您提供一個包含所有所需列名的列表。 從那里您可以創建您的 Dataframe。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM