Pandas|Pandas DataFrame数据修改值的方法

dfmi.iloc[:,1]

pandas要修改值先需要了解DataFrame的一些知识
此处参照的是pandas的官方文档
When setting values in a pandas object, care must be taken to avoid what is calledchained indexing. Here is an example.
要修改pandas--DataFrame中的值要注意避免在链式索引上得到的DataFrame的值
这里创建了一个DataFrame
dfmi = pd.DataFrame([list('abcd'),list('efgh'),list('ijkl'),list('mnop')],columns=pd.MultiIndex.from_product([['one','two'],['first','second']]))

Pandas|Pandas DataFrame数据修改值的方法
文章图片

在列索引运用的层次索引创建了一个层次索引
通过直接访问可以得到第一层索引['one']下的DataFrame的值,相当于一个单独索引的子表
dfmi['one']

Pandas|Pandas DataFrame数据修改值的方法
文章图片

dfmi['one']['second']

Pandas|Pandas DataFrame数据修改值的方法
文章图片

dfmi.loc[:,('one','first')]

Pandas|Pandas DataFrame数据修改值的方法
文章图片

Pandas|Pandas DataFrame数据修改值的方法
文章图片

对比iloc与loc的选择,通过直接标签访问的情况有所不同。通过标签的访问是一个序列性质的访问顺序,先从DataFrame选择出‘one'然后再在'one'中选择出'first'。将('one','first')元组作为传入,只调用了__getitem__一次,速度更快。
所以在修改值时避免这种线性调用
Pandas|Pandas DataFrame数据修改值的方法
文章图片

而选择下面这种方式
Pandas|Pandas DataFrame数据修改值的方法
文章图片

【Pandas|Pandas DataFrame数据修改值的方法】 到此这篇关于Pandas DataFrame数据修改值的方法的文章就介绍到这了,更多相关Pandas DataFrame修改值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读