簡體   English   中英

如何在數據框中添加列?

[英]How can I add columns in a data frame?

我有以下數據:

例:

DRIVER_ID;時間戳; POSITION

156; 2014-02-01 00:00:00.739166 + 01; POINT(41.8836718276551 12.4877775603346)

我想創建一個4列的pandas數據幀,即id,時間,經度,緯度。 到目前為止,我得到了:

cur_cab = pd.DataFrame.from_csv(
            path,
            sep=";",
            header=None,
            parse_dates=[1]).reset_index()
cur_cab.columns = ['cab_id', 'datetime', 'point']

path指定包含數據的.txt文件。 我已經編寫了一個函數,它返回點結構化字符串中的經度和緯度值。 如何使用附加列和拆分值展開數據框?

加載后,如果您使用的是最新版本的pandas,則可以使用向量化的str方法來解析列:

In [87]:
df['pos_x'], df['pos_y']= df['point'].str[6:-1].str.split(expand=True)
df

Out[87]:
   cab_id                   datetime  \
0     156 2014-01-31 23:00:00.739166   

                                      point  pos_x  pos_y  
0  POINT(41.8836718276551 12.4877775603346)      0      1  

另外你應該停止使用from_csv它不再更新,使用頂級read_csv所以你的加載代碼將是:

cur_cab = pd.read_csv(
            path,
            sep=";",
            header=None,
            parse_dates=[1],
            names=['cab_id', 'datetime', 'point'],
            skiprows=1)

暫無
暫無

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

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