pandas 对csv增加一行一列并随机赋值的问题

charles_su
  • 42

在最后一列添加新的列,列名为wine; 添加的数据为随机正态分布,1/5的数据为1,剩余数据为-1;

df['wine']=-1
ran1=random.sample(range(0,len(df)//5),len(df)//5)#随机产生行号
for i in ran1:

df['wine'][ran1[i]]=1 #这里难道不是对wine列 ran1[i]行赋值为1吗,
#我的结果为什么是前面全是1, 后面是-1啊

在最后一行之后添加一行,随机添加1/4的数据为1,剩余为-1;

df.loc[len(df)] = -1
ran2=random.sample(range(0,df.shape[1]//4),df.shape[1]//4)#随机产生列号
for i in ran2:

df[ran2[i]][df.shape[0]]=1#这里难道不是对最后一行,ran2[i]列赋值为1吗

回复
阅读 5.6k
1 个回答
ran1=random.sample(range(0,len(df)),len(df)//5)  #前面没有//5随机所有行
for i in ran1:
    df['wine'][i]=1    #不是ran1[i]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏