【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')

即可完成。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值