Python中向DataFrame添加新行的方法详解

在pandas更新版本后,往DataFrame中添加新的一行的方法发生了变化。假设原有数据表格为data,需要在data下添加新的一行,可使用

data = pd.concat([data]+[copydata],ignore_index=True,axis=0)           #data为原始数据,copydata为插入数据

进行添加。

使用例:
现有一个excel表格,“d”"s1""s2""s3""s4""s5""label"分别为特征维度,"n"为具有该特征的人数

现在想要将该数据转换成每个个体的特征数据,即将”n"行拆开,运用以下代码:

import pandas as pd 
import numpy as np
data=pd.read_csv('G:/feature_class.csv')
data_new=pd.DataFrame(columns=['d','s1','s2','s3','s4','s5','label'])           #新建表
#print(data_new)
for index,row in data.iterrows():
    data_temp=pd.DataFrame({'d':[row['d']],'s1':[row['s1']],'s2':[row['s2']],'s3':[row['s3']],'s4':[row['s4']],'s5':[row['s5']],'label':[row['label']]})        #插入表,注意字段与data_new保持一致
    #print(data_temp)
    copydata=[data_temp]*row['n']                     #复制n次
    data_new = pd.concat([data_new]+copydata,ignore_index=True,axis=0)
data_new.to_csv('D:/result.csv')

即可完成。

物联沃分享整理
物联沃-IOTWORD物联网 » Python中向DataFrame添加新行的方法详解

发表评论