机器学习——Pandas库
开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第27天,点击查看活动详情
目录
二、Pandas库数据结构——Series, DataFrame
2.DataFrame——索引index, columns,值 values
1.Series 索引与切片 Index索引/数字索引/布尔值索引
一、Pandas库
import numpy as np
import pandas as pd
二、Pandas库数据结构——Series, DataFrame
a = pd.Series([1, 2, 3, 4, 5])
编辑
data = np.array([[95, 96, 97], [80, 85, 86], [56, 65, 70]])
frame = pd.DataFrame(data)
frame
编辑
我们不难看出来Series, DataFrame的区别:DataFrame更加好看哈哈,接受矩阵数据
详细见:
pandas中的两种数据类型Series和DataFrame区别_jolingcome的博客-CSDN博客_series和dataframe区别
1.Series——索引 index,值 values
a = pd.Series([1, 2, 3, 4, 5], index = ['a', 'b', 'c', 'd', 'e'])
a
编辑
2.DataFrame——索引index, columns,值 values
frame = pd.DataFrame(data, index=['xiaoming', 'xiaohong', 'xiaohei'],
columns=['yuwen', 'yingyu', 'shuxue'])
frame
编辑
指定或修改索引方法
创建时:
index, columns 指定索引,已经有索引可以按索引重新排序
创建后:
reindex方法,重新建立索引或指定索引排序
rename 修改索引
``` frame_.rename(index={"xiaohong":"damao","xiaoming":"ermao","xiaohei":"Nicolas Cage"}, columns={"yingyu":"English", "yuwen":"Literature", "shuxue":"Maths"})
Series.index = [] DataFrame.columns = [] ```
三、Series, DataFrame运算
1.基本运算
按照索引位置进行计算
data = {"English":[80,70,60],
"Literature":[70,70,85],
"Maths":[80,90,50],
"Music":["A","B","C"]}
df = pd.DataFrame(data,index = ["alpha", "beta","theta"])
df * 2
编辑
DataFrame、Series “相加”时,按照DF的columns(列)进行匹配
``` data1 = {"English":[80,70,60], "Literature":[70,70,85], "Maths":[80,90,50],} df1 = pd.DataFrame(data1,index = ["alpha", "beta","theta"]) add_ = {'Maths':10,'English':10,'Literature':20,'Gym':"A"} add_ = pd.Series(add_)
df1 + add_ ```
编辑
2.矩阵运算、通用函数
df.T
编辑
3.基本统计方法
查看数据的一些
df.describe()
编辑
四、Series, DataFrame 索引与切片
1.Series 索引与切片 Index索引/数字索引/布尔值索引
add_ = {'Maths':10,'English':10,'Literature':20,'Gym':"A"}
add_ = pd.Series(add_)
add_['Maths']
编辑
2.DataFrame 索引与切片
``` Index索引 列:df['Maths'] 行:df.loc[‘alpha’]
数字索引 df.iloc[] 特别的行可以直接用数字切片索引
布尔值索引 ```
五、Series, DataFrame 删除操作
1.Series删除操作 pop/drop/del
① del方式:就地删除
``` x = pd.Series([10,23,31,16],index=list("abcd")) display(x)
删除了某个索引后,对应的值也就删除了
del x["b"] display(x) ```
编辑
② drop方式:当指定了inplace=True后,才属于就地删除
``` x = pd.Series([10,23,31,16],index=list("abcd")) display(x)
y = x.drop("a") display(y) dispaly(x)
当指定了inplace=True后,属于就地删除
x.drop("a",inplace=True) display(x) ```
编辑
2.DataFrame删除操作 pop/drop/del
和 Series删除操作 pop/drop/del 类同的,聪明的你可以想想
六、Series, DataFrame 合并操作
一般我们用到什么方法就去查看该方法的参数
1.Series合并操作
pd.concat() combine_first()
2.DataFrame合并操作
``` pd.concat() combine_first()
pd.merge() join() ```
七、Pandas库其他常用函数或方法
``` head() info() describe()
sort_index() sort_values()
is_unique value_counts()
rank() ```
详细可见pandas中Series,DataFrame的连接(拼接)_晓东邪的博客-CSDN博客_pandas series 拼接