Pandas 中Dataframe的 Insert函数详解

Dataframe.insert(loc, column, value, allow_duplicates=False): 在Dataframe的指定列中插入数据。

参数介绍:

       loc:  int型,表示第几列;若在第一列插入数据,则 loc=0

       column: 给插入的列取名,如 column='新的一列'

       value:数字,array,series等都可(可自己尝试)

       allow_duplicates: 是否允许列名重复,选择Ture表示允许新的列名与已存在的列名重复。
 举例:

#创建数据
In [165]:data=pd.DataFrame(np.arange(16).reshape(4,4), columns=list('abcd'))
 
In [166]:data
Out[166]: 
    a   b   c   d
0   0   1   2   3
1   4   5   6   7
2   8   9  10  11
3  12  13  14  15
 
#在第一列插入一列,取名'haha'
In [167]:  data.insert(loc=0,column='haha',value=6)
 
In [168]:  data
Out[168]: 
   haha   a   b   c   d
0     6   0   1   2   3
1     6   4   5   6   7
2     6   8   9  10  11
3     6  12  13  14  15
 
#在第一列插入一列,取名'haha'(重复选择允许)
In [169]: data.insert(loc=0,column='haha',value=6,allow_duplicates=True)
 
In [170]: data
Out[170]: 
   haha  haha   a   b   c   d
0     6     6   0   1   2   3
1     6     6   4   5   6   7
2     6     6   8   9  10  11
3     6     6  12  13  14  15

扩展:如何在列表中插入值呢?

以下实例展示了列表的 insert()函数的使用方法:

aList = [123'xyz''zara''abc']

aList.insert( 3, 2009)

print "Final List : ", aList

以上实例输出结果如下:

Final List : [123'xyz''zara'2009'abc']

如果要插入多个值,可以这样二个方式:

# Solution1:

= [123910]

= [45678]

= a[:3+ + a[3:]

print(c)

# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

 

 

# Solution2: use list.insert(index, element)

= [123910]

= [45678]

index = 3

for in b[::-1]:

    a.insert(index, i)

print(a)

# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

你可能感兴趣的:(python基础,python)