pandas 有三种数据结构
一种是 Series
一种是 Dataframe
import pandas as pd import numpy as np score = np.random.randint(0,100,[10,5])score[0,0] = 100Datascore = pd.DataFrame(score)subject = ["语文","数学","英语","物理","化学"]Datascore.columns = subjectstuName = {"同学"+ str(i) for i in range(10)}Datascore.index = stuNameprint(Datascore)print(Datascore.shape)
使用 列表 做数据传入 可以更方便使用列表的下标更改数据
import pandas as pd import numpy as np import matplotlib.pyplot as plt # 读取 csv的 文档 starbucks = pd.read_csv('directory.csv') # 按照 Country 进行分组聚合 count = starbucks.groupby(['Country']).count() # 绘制直线图 count['Brand'].plot(kind = "bar",figsize=(20,8)) plt.show()
import matplotlib.pyplot as plt import pandas as pd import numpy as np # 使得数据显示完全 pd.set_option('display.max_columns', 1000) pd.set_option('display.width', 1000) pd.set_option('display.max_colwidth', 1000)# 读取文件 MovieDate = pd.read_csv("IMDB-Movie-Data.csv") # 取平均值 取平均值函数 mean() meanData=MovieDate["Rating"].mean() print(meanData) # 获取导演的人数 使用获取标签 然后使用 unipue去掉重复值 然后获取到对应的数量 DirectorCount = MovieDate["Director"].unique().shape[0] print(DirectorCount)
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
# 使得数据显示完全
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)# 读取文件
MovieDate = pd.read_csv("IMDB-Movie-Data.csv")
# 取平均值 取平均值函数 mean()
meanData=MovieDate["Rating"].mean()# 获取导演的人数 使用获取标签 然后使用 unipue去掉重复值 然后获取到对应的数量
DirectorCount = MovieDate["Director"].unique().shape[0]# 获得 Rating 和 Values的分布
# 使用pandas的画图工具来画的话,无法精细的描绘图像,还是需要使用matplotlib
MovieDate["Rating"].plot(kind="hist")
# 创建画布
plt.figure(figsize=(20,8),dpi=100)
# 描绘直方图 添加数据就可以弹出图形
plt.hist(MovieDate["Rating"])
# 修改刻度
# 确定最大值 最小值 分组
Maxrate = MovieDate['Rating'].max()
Minrate = MovieDate['Rating'].min()
# linespace np的一个函数 可以创建等差数列,这些数列均匀的分布在范围内 返回一维数组类型
# start end num-->分成的组数
xticks=np.linspace(Minrate,Maxrate,num=21)
# 只能填入
plt.xticks(xticks)
plt.show()