国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

Python pandas自定義函數的使用方法示例

2024-09-09 19:02:53
字體:
來源:轉載
供稿:網友

本文實例講述了Python pandas自定義函數的使用方法。分享給大家供大家參考,具體如下:

自定義函數的使用

import numpy as npimport pandas as pd# todo 將自定義的函數作用到dataframe的行和列 或者Serise的行上ser1 = pd.Series(np.random.randint(-10,10,5),index=list('abcde'))df1 = pd.DataFrame(np.random.randint(-10,10,(4,5)),index=list('ACBD'),columns=list('abcde'))# todo 定義一個函數,求其和,絕對值,最大值減最小值的差值,平方def func(x): # print(x) print('--------------') num= np.max(x)-np.min(x) a = abs(x) b= x**2 # return num # return a return bprint(ser1.apply(func))def func1(x): # print(x) print('--------------') # num= np.max(x)-np.min(x) a = abs(x) b= x**2 # return num # return a return bprint(df1.apply(func1,axis = 1))# todo 使用匿名函數實現----求其和,絕對值,最大值減最小值的差值,print(df1.apply(lambda x:x**2,axis=1))print('------')print(df1.apply(lambda x:np.max(x)-np.min(x),axis=1))print('---------')print(df1.apply(lambda x:abs(x),axis=1))# applymap的使用# todo 使用applymap 因為applymap作用在每個元素上,所以不需要指定axisprint(df1.applymap(lambda x:x**2))print('---------')print(df1.applymap(lambda x:abs(x)))

排序

import numpy as npimport pandas as pdser1 = pd.Series(np.random.randint(-10,10,10),index=list('acbdfeghji'))df1 = pd.DataFrame(np.random.randint(-10,10,(4,5)),index=list('ADBC'),columns=list('abcde'))print(ser1)print(df1)print('------------------')# todo 按照索引排序 sort_index()# print(ser1.sort_index())#默認升序# print(ser1.sort_index(ascending=False))#指定ascending為降序# print(df1.sort_index())#默認行升序# print(df1.sort_index(ascending=False))#行降序# print(df1.sort_index(axis=1))#列升序# print(df1.sort_index(ascending=False,axis=1))#列降序# todo 按照值排序print(ser1.sort_values())#默認升序print(ser1.sort_values(ascending=False))#指定ascending為降序# dataframe 對象比較復雜,需要按照哪一列來進行排序print(df1.sort_values(by='a'))#默認列升序print(df1.sort_values(by='a',ascending=False))#列降序print(df1.sort_values(by='A',axis=1))#行升序print(df1.sort_values(by='A',ascending=False,axis=1))#行降序

數據重構

import numpy as npimport pandas as pdser1 = pd.Series(np.random.randint(-10,10,10),index=[list('aabbccddee'),[1,2,1,2,1,2,1,2,1,2]])df1 = pd.DataFrame(np.random.randint(-10,10,(4,5)),index=list('aabb'),columns=list('abcde'))print(ser1)print(df1)print('-----------------------')# todo 外層索引取值print(ser1['a'])#獲取單個外層索引print(ser1['a':'e'])#獲取多個外層# todo 內層索引取值print(ser1[:,1])# todo 指定外層,內層索引取值print(ser1['a',1])# todo 交換分層-----swaplevel()print(ser1.swaplevel())# todo 將Sterise轉為dataframe對象外層索引作為行索引,內層索引作為列索引print(ser1.unstack())# todo 將dataframe轉為Sterise對象行索引作為外層索引行索引,列索引作為內層索引列print(df1.stack())# todo dataframe 轉字典print(df1.to_dict())# todo dataframe 轉csv文件print(df1.to_csv())

數據連接操作

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湘阴县| 沂南县| 淮滨县| 梁平县| 贡山| 宁都县| 溆浦县| 北碚区| 海原县| 抚松县| 淳安县| 栾川县| 保德县| 大渡口区| 抚州市| 天祝| 台中市| 分宜县| 三河市| 册亨县| 贵溪市| 沙坪坝区| 阳原县| 岳池县| 深水埗区| 四平市| 汝城县| 崇礼县| 喀什市| 靖安县| 古浪县| 汝南县| 孟连| 左贡县| 张家川| 唐河县| 都昌县| 泸水县| 获嘉县| 揭阳市| 亳州市|