1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Python之pandas:对pandas中dataframe数据中的索引输出 修改 重命名等详细攻略

Python之pandas:对pandas中dataframe数据中的索引输出 修改 重命名等详细攻略

时间:2020-03-10 04:41:54

相关推荐

Python之pandas:对pandas中dataframe数据中的索引输出 修改 重命名等详细攻略

Python之pandas:对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略

目录

对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略

知识点学习

输出结果

实现代码

对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略

知识点学习

构造数据查看索引修改列索引内元素名称

# 重命名指定行索引名称, []列表的长度必须与df行数一致,可以重复

# 输出当前的索引列名称设置单个索引列

# 指定索引列,其中drop=False 表示保留原先索引列的数据

# 设置索引列名称

# 输出当前的索引列名称字段去重

# unique()对某列实现去重设置复合索引:将多列设置为索引

# 输出当前的索引列名称

输出结果

RangeIndex(start=0, stop=4, step=1)Unnamed: 0 name ID age sex0_Rename 0 Bob 1 NaN 男1_Rename 1 LiSa 2 28.0 女2_Rename 2 Mary 3 38.0 女3_Rename 3 Alan 4 NaN NaNNone单个索引列: Index_From_IDUnnamed: 0 name age sexIndex_From_ID 1 0 Bob NaN 男2 1 LiSa 28.0 女3 2 Mary 38.0 女4 3 Alan NaN NaN字段去重 ['男' '女' nan]复合索引列: NoneUnnamed: 0 ID sexname age Bob NaN 0 1 男LiSa 28.0 1 2 女Mary 38.0 2 3 女Alan NaN 3 4 NaN

实现代码

# 1、定义数据集contents={"name": ['Bob', 'LiSa', 'Mary', 'Alan'],"ID": [1, 2, 3, 4], # 输出 NaN"ID02": [1, 2,' ',None], # 输出 NaN"age": [np.nan, 28, 38 ,'' ], # 输出 "age02": [14, 26, 24 ,6], "age03": [14, '26', '24' , '6'], "born": [pd.NaT,pd.Timestamp("1990-01-01"), pd.Timestamp("1980-01-01"), ''],# 输出 NaT"sex": ['男','女', '女', None,], # 输出 None"hobbey":['打篮球','打羽毛球', '打乒乓球','',], # 输出 "money":[200.0,240.0, 290.0, 300.0], # 输出"weight":[140.5,120.8, 169.4, 155.6], # 输出"test01":[1, 2.123456789, 3.123456781011126, 4.123456789109999], # 输出"test02":[1, 2.123456789, 3.123456781011126, 4.123456789109999], # 输出}data_frame = pd.DataFrame(contents)# Python之pandas:对pandas中dataframe数据中的索引输出、修改、重命名等详细攻略# 构造数据cols01=["name","ID","age","sex",]nums_df_temp=data_frame.loc[:,cols01]nums_csv_file="nums_df_temp.csv"nums_df_temp.to_csv(nums_csv_file)nums_df=pd.read_csv(nums_csv_file)nums_df02=nums_df.copy()# 查看索引print('查看原始索引',nums_df.index) # 修改列索引内元素名称nums_df.index = ["0_Rename","1_Rename","2_Rename","3_Rename"]# 重命名指定行索引名称, []列表的长度必须与df行数一致,可以重复print(nums_df)# 输出当前的索引列名称print(nums_df.index.name)# 设置单个索引列nums_df=nums_df.set_index('ID',drop=True)# 指定索引列,其中drop=False 表示保留原先索引列的数据nums_df.index.name = 'Index_From_ID'# 设置索引列名称print('单个索引列:',nums_df.index.name) # 输出当前的索引列名称print(nums_df)# 字段去重print('字段去重',nums_df["sex"].unique())# unique()对某列实现去重# 设置复合索引:将多列设置为索引nums_df02 = nums_df02.set_index(["name", "age"])print('复合索引列:',nums_df02.index.name)# 输出当前的索引列名称print(nums_df02)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。