pandas 打卡第三天

tech2022-09-22  73

1np.r_ 在下方堆栈 np.c_在一侧堆栈 import pandas as pd import numpy as np arr = np.arange(6) arr1 = arr.reshape((3,2)) arr2 = np.random.randn(3,2) print(np.r_[arr1, arr2]) print(arr) print(np.c_[np.r_[arr1,arr2],arr]) print(np.c_[1:6,-10:-5])

2重复元素:title和repeat

arr = np.arange(3) print(arr) # repeat重复三次生成更大的数组 a = arr.repeat(3) print(a) # 传入数组,则会按照数组重复不同次数 b = arr.repeat([2,3,4]) print(b)

 

# 铺设是逐行进行的,不是逐列 arr = np.arange(3) print(arr) a = np.tile(arr,3) print(a) b = np.tile(arr,(2,1)) print(b) c = np.tile(arr,(3,2)) print(c)

3 求和

# 求和 arr = np.arange(10) a = np.add.reduce(arr) b = arr.sum() print(a,b)

4 apply用法

frame = pd.DataFrame(np.random.randn(4,3),columns=list('bde'),index=['Utah','Ohio','Texas','Oregon']) print(frame) f = lambda x:x.max()-x.min() a = frame.apply(f) print(a) b = frame.apply(f,axis='columns') print(b) def f(x): return pd.Series([x.min(),x.max()],index=['min','max']) c = frame.apply(f) print(c) # 格式化字符串 format = lambda x:'%.2f'%x d = frame.applymap(format) print(d) e = frame['e'].map(format) print(e)

5排序

# 排序,指定空的位置 obj = pd.Series([4,np.nan,7,np.nan,-3,2]) b = obj.sort_values(na_position='first') # b = obj.sort_values(na_position='last') print(b)

6 排名

# 排名rank obj = pd.Series([7,-5,7,4,2,0,4]) print(obj) # 默认情况下。rank通过将平均排名分配到每个组来打破平级 a = obj.rank() print(a) # 观察顺序排名 b = obj.rank(method='first') print(b) # 将值分配给组中的最大排名 c = obj.rank(ascending=False,method='max') print(c)

7 判断标签是否唯一

obj = pd.Series(range(5),index=['a','a','b','b','c']) print(obj) # 判断标签是否唯一 a = obj.index.is_unique print(a)

 

最新回复(0)