簡體   English   中英

在 Python 中加入一個列表

[英]Join into one list in Python

我有一個像這樣處理的 DataFrame:

df = my_table[0]

df_position = df['Position'].replace({'-':','}, regex=True)

這給了我這樣的結果:

0  1,2,3,4
1  4,5,6,7
2  7,8,9,10
3  10,11,12,13

我怎樣才能將數據放在一個列表中,像這樣?

[1,2,3,4,4,5,6,7,7,8,9,10,10,11,12,13]

IIUC,您可以將值與 連接在一起,然后將整個內容拆分為,並將值轉換為int

[int(v) for v in ','.join(df_position).split(',')]

輸出:

[1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 10, 11, 12, 13]

如果您想直接對數據框進行操作,則可以改用它(在-上加入和拆分):

[int(v) for v in '-'.join(df['Position']).split('-')]

輸出:

[1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 10, 11, 12, 13]

使用Series.str.split(',')以逗號分隔值,然后調用explode使其垂直變長,然后調用to_list從中獲取列表。 使用df.iloc[:,0]假設您對第一列的值感興趣。

>>> df.iloc[:,0].str.split(',').explode().astype('int').to_list()

[1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 10, 11, 12, 13]

由於您已經將df_position綁定到所需的特定列,因此您也應該能夠使用它。

df_position.str.split(',').explode().astype('int').to_list()

暫無
暫無

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

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