Python Pandas 将数据移动到新行

我无法以正确的格式将数据加载到数据帧中。


我正在处理的数据具有以下形式:


Sensor Name,Variable,Units,Timestamp,Value,Flagged as Suspect Reading

PER_EMOTE_2202,CO,ugm -3,2019-02-15 15:46:16,476.634102929914,False

PER_EMOTE_2202,Humidity,%,2019-02-15 15:46:16,49.8,False

PER_EMOTE_2202,NO,ugm -3,2019-02-15 15:46:16,68.5581902781,False

PER_EMOTE_2202,NO2,ugm -3,2019-02-15 15:46:16,80.220623065752,False

PER_EMOTE_2202,Sound,db,2019-02-15 15:46:16,69.0,False

PER_EMOTE_2202,Temperature,Celsius,2019-02-15 15:46:16,13.2,False

PER_EMOTE_2202,CO,ugm -3,2019-02-15 15:47:16,475.363796635848,False

PER_EMOTE_2202,NO,ugm -3,2019-02-15 15:47:16,84.7920567981415,False

PER_EMOTE_2202,NO2,ugm -3,2019-02-15 15:47:16,82.3021250062142,False

PER_EMOTE_2202,Sound,db,2019-02-15 15:47:16,69.0,False

我想将它加载到代表每个变量值的列中,按时间戳索引。


例如; 所需格式


到目前为止,我有以下几点:


def load_data(path):


    df = pd.read_csv(path, usecols=['Timestamp', 'Variable', 'Units', 'Value'])

    df = df.set_index('Timestamp')


    return df

这产生了结果;结果


桃花长相依
浏览 190回答 1
1回答

江户川乱折腾

尝试使用数据透视表。def load_data(path):    df = pd.read_csv(path, usecols=['Timestamp', 'Variable', 'Units', 'Value'])    df = df.pivot_table(index='Timestamp', columns='Variable', values='Value')    return df
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python