返回顶部
首页 > 资讯 > 精选 >pandas如何使用insert插入一列
  • 447
分享到

pandas如何使用insert插入一列

2023-06-14 06:06:47 447人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关pandas如何使用insert插入一列,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。把value插入dataframe的指定位置loc中,若插入的数据value已在DataF

这篇文章将为大家详细讲解有关pandas如何使用insert插入一列,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

把value插入dataframe的指定位置loc中,若插入的数据value已在DataFrame中,则返回 错误ValueError,如想完成重复值的插入需要把allow_duplicates设置为True

insert方法详解

DataFrame.insert(loc, column, value, allow_duplicates=False)

参数:

Raises a ValueError if column is already contained in the DataFrame, unless allow_duplicates is set to True.

Parameters:

loc :参数column插入的位置,如果想插入到第一例则为0,取值范围: 0 <= loc <= len(columns),其中len(columns)为Dataframe的列数

column :给 插入数据value取列名,可为数字,字符串

value :可以是整数,Series或者数组

allow_duplicates : 默认 False

1.创建数据

import pandas as pdimport numpy as npdata = { 'school' : ['北京大学', '清华大学', '山西大学', '山西大学', '武汉大学'], 'name' : ['江路离', '沈希梦', '来使鹭', '陈曦冉', '姜浩然'], 'No.' : [20001943, 300044451, 20190006, 20191234, 1242522]}# data = list(data) <-> data = list(data.keys)# data = list(data.values())frame = pd.DataFrame(data)print(frame)

结果:

pandas如何使用insert插入一列

2.插入数据

frame.insert(0, 'num', np.ones(5))print(frame)

结果:

pandas如何使用insert插入一列

frame.insert(len(frame.columns), 'list', [x for x in range(5)])print(frame)

pandas如何使用insert插入一列

3.插入已存在数据

结果:

pandas如何使用insert插入一列

4.把allow_duplicates设置为True,可实现重复值的插入

frame.insert(0, 'num', np.ones(5), allow_duplicates=True)print(frame)

pandas如何使用insert插入一列

补充:pandas 中的insert(), pop()在DataFrame的指定位置中插入某一列

在pandas中,del、drop和pop方法都可以用来删除数据,insert可以在指定位置插入数据。

可以看看以下示例。

import pandas as pd from pandas import DataFrame, Seriesdata = DataFrame({'name':['yang', 'jian', 'yj'], 'age':[23, 34, 22], 'gender':['male', 'male', 'female']})#data数据'''In[182]: dataOut[182]:   age gender name0  23  male yang1  34  male jian2  22 female  yj'''#删除gender列,不改变原来的data数据,返回删除后的新表data_2。axis为1表示删除列,0表示删除行。inplace为True表示直接对原表修改。data_2 = data.drop('gender', axis=1, inplace=False)'''In[184]: data_2Out[184]:   age name0  23 yang1  34 jian2  22  yj'''#改变某一列的位置。如:先删除gender列,然后在原表data中第0列插入被删掉的列。data.insert(0, '性别', data.pop('gender'))#pop返回删除的列,插入到第0列,并取新名为'性别''''In[185]: dataOut[186]:     性别 age name0  male  23 yang1  male  34 jian2 female  22  yj'''#直接在原数据上删除列del data['性别']'''In[188]: dataOut[188]:   age name0  23 yang1  34 jian2  22  yj'''

关于“pandas如何使用insert插入一列”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: pandas如何使用insert插入一列

本文链接: https://lsjlt.com/news/268494.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作