赞
踩
对于一个Series,其中最常用的属性为值(values)、索引(index)、名字(name),类型(dtype)
s = pd.Series(np.random.randn(5),index=['a','b','c','d','e'],name='这是一个Series',dtype='float64')
s
a -0.152799
b -1.208334
c 0.668842
d 1.547519
e 0.309276
Name: 这是一个Series, dtype: float64
访问Series属性
s.values
array([-0.15279875, -1.20833379, 0.6688421 , 1.54751933, 0.30927643])
s.name
'这是一个Series'
s.index
Index(['a', 'b', 'c', 'd', 'e'], dtype='object')
s.dtype
dtype('float64')
df = pd.DataFrame({'col1':list('abcde'),'col2':range(5,10),'col3':[1.3,2.5,3.6,4.6,5.8]},
index=list('一二三四五'))
df
df['coll']
df.rename(index={'一':'one'},columns={'col1':'new_col1'})
df.index
Index(['一', '二', '三', '四', '五'], dtype='object')
df.columns
Index(['col1', 'col2', 'col3'], dtype='object')
df.values
array([['a', 5, 1.3],
['b', 6, 2.5],
['c', 7, 3.6],
['d', 8, 4.6],
['e', 9, 5.8]], dtype=object)
df.shape
(5, 3)
这是Pandas中非常的强大的特性,举例如下
df1 = pd.DataFrame({'A':[1,2,3]},index=[1,2,3])
df2 = pd.DataFrame({'A':[1,2,3]},index=[3,1,2])
df1-df2
对于删除而言,可以用drop函数或者del或者pop
当然需要注意的是在运用drop函数时若参数inplace=True后会直接在原DataFrame中改动
df.drop(index='五',columns='col1')
df['col1']=[1,2,3,4,5]
del df['col1']
df
pop方法直接在原来的DataFrame上操作,且返回被删除的列,与python中的pop函数类似
df['col1']=[1,2,3,4,5]
df.pop('col1')
可以直接增加新的列,也可以使用assign方法
但assign方法不会对原DataFrame做修改
df1['B']=list('abc')
df.select_dtypes(include=['number']).head()
df.select_dtypes(include=['float']).head()
最后用T符号可以转置
返回最初行:Head()
返回最后行:Tail()
如果默认括号里不加参数,那么就会默认为前五行或者后五行
nunique显示有多少个唯一值
unique显示所有的唯一值
count返回某行某列的元素个数
value_counts返回每个元素有多少个
info函数返回有哪些列、有多少非缺失值、每列的类型
describe默认统计数值型数据的各个统计量
df.info()
df.describe()
其中还可以自行选择分位数
df.describe(percentiles=[.05, .25, .75, .95])
对于非数值型也可以用describe函数
idxmax函数返回最大值所在索引,在某些情况下特别适用,idxmin功能类似
nlargest函数返回前几个大的元素值,nsmallest功能类似
df['ciol1'].nlargest(3)
clip和replace是两类替换函数
clip是对超过或者低于某些值的数进行截断
replace是对某些值进行替换
此函数自由度很高,我会专门去讲解。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。