详解pandas的相关的数据操作

pandas 是常见的数据分析使用的库,那么如何删除列或者行呢(行和列的差距就在axis=1和0的区别了)axis默认是等于0

第一个是drop()方法

#比如说,我们先做个数据
import numpy as np 
from pandas import DataFrame
a=DataFrame(data=np.random.randint(0,100,size=(3,5)),index=["a","b","c"],columns=["A","B","C","D","E"])
#结果是这样的
	A	B	C	D	E
a	63	67	23	80	53
b	18	77	41	70	32
c	69	84	37	93	23

#那么,我们先drop方法
a.drop(["A"],axis=1)
#删除列。

B	C	D	E
a	15	99	80	43
b	76	24	40	87
c	77	99	42	84
#干掉行
a.drop(["a"],axis=0)

A	B	C	D	E
b	50	76	24	40	87
c	31	77	99	42	84

#同理, 你只要知道行和列的相应 index 或者columns即可解决问题。
#删除多行
a.drop(["a","b"],axis=0)#只删除a和b 。列就是同理

A	B	C	D	E
c	31	77	99	42	84

#要修改源数据的话,要加inplace=true

#取出某一行或者列
a.loc["a"]
A    89
B    15
C    99
D    80
E    43
Name: a, dtype: int32

a["A"]
a    89
b    50
c    31
Name: A, dtype: int32


 注意iloc只能用整数来取数
 loc可以是切片或者其他什么的都行
 
a.iloc[1]#行
A    50
B    76
C    24
D    40
E    87
Name: b, dtype: int32
#列
a.iloc[:,1]
a    15
b    76
c    77
Name: B, dtype: int32

#多行
a.iloc[1:3] #取出了第二和第三行

A	B	C	D	E
b	50	76	24	40	87
c	31	77	99	42	84

#同时取行列
a.iloc[1:3,1]

b    76
c    77
Name: B, dtype: int32

iloc和loc的原理是一样的,差距就在一个只能用整数,如上

通过这个分辨
a.iloc["a":"b"]会报错。

#拼接上数据
、、、后面在写把

上一篇:DW的a标签


下一篇:Python pandas.DataFrame.iloc函数方法的使用