求pandas赋值 迭代dataframe获取元素赋值新列的高效方法?

  1.若两列的行数相同则可以直接進行赋值: 

 
2.若两列的行数不同,则可以采用左连接的方式进行赋值:

字典中的keys就是DataFrame里面的columns但是没有index嘚值,所以需要自己设定不设定默认是从零开始计数。

从多维数组中创建就需要为DataFrame赋值columns和index否则就是默认的,很丑的

这里的拷贝是深拷贝,改变cc中的值并不能改变bb中的值

对于一个DataFrame来说,索引是最烦的最易出错的。

.索引一列或几列比较简单:

多个列名需要将输入的列名存在一个列表里,才是个collerable的变量否则会报错。

2.索引一条记录或几条记录:

这里注意冒号是必须有的否则是索引列的了。

3.索引某几列的变量的某几条记录这个折磨了我好久:

这种不能改变这里面的值,你只是能读值不能写值,可能和loc()函数有关:

想要改变其中的值僦会报错

第三种:可以改变数据的值!!!

1.什么都不用的,只能单独创建一列多列并不好使,亲测无效:

赋予的list基本就是按照所给index值順序赋值可是一般我们是要对应的index进行赋值,想要更高级的赋值就看后面的了

2.使用字典进行多列按index赋值:

这里aa是一个字典和列表的嵌套,相当于一条记录使用keys当做index名而不是一般默认的columns名。达到了按index多列匹配的目的由于dict()储存是混乱的,之间用dict()而不给他的index赋值會记录错乱这一点注意值得注意。

四、删除多列或多记录:

DataFrame还有很多功能还没有涉及等以后有涉及到,看完官网的API之后还会继续分享,everything is ok

我要回帖

更多关于 pandas赋值 的文章

 

随机推荐