[英]Splitting strings in an array - python
我有一個帶有數組變量的pandas數據框,該數組變量當前由兩部分組成,如下例所示。 第一部分是日期時間,第二部分是價格。 數據框中的記錄具有不同長度的price_trend數組。
Id Name Color price_trend
1 apple red '1420848000:1.25', '1440201600:1.35', '1443830400:1.52' 60
2 lemon yellow '1403740800:0.32','1422057600:0.25'
我想將數組中的每個字符串分成兩個部分,以冒號(:)開頭,但是當我運行下面的代碼時,price_trend中的所有值都被替換為nan
df['price_trend'] = df['price_trend'].str.split(':')
我想將數組保留在此數據框中,而不要創建一個新數組。
df['price_trend'].apply(lambda x:[i.split(':') for i in x])
0 [['1420848000, 1.25'], [ '1440201600, 1.35'], [ '1443830400, 1.52']]
1 [['1403740800, 0.32'], ['1422057600, 0.25']]
我認為下面的代碼應該為您工作
>>> df={}
>>> df['p']=['1420848000:1.25', '1440201600:1.35', '1443830400:1.52']
>>> df['p']=[ x.split(':') for x in df['p']]
>>> df
{'p': [['1420848000', '1.25'], ['1440201600', '1.35'], ['1443830400', '1.52']]}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.