# 读取天气
import pandas as pd
df = pd.read_csv("beijing_tianqi_2018.csv")
# 读取前三行
df.head(3)
# 更改温度后缀,替换为数字型
# 替换掉温度的后缀℃
df.loc[:, "bWendu"] = df["bWendu"].str.replace("℃", "").astype('int32')
df.loc[:, "yWendu"] = df["yWendu"].str.replace("℃", "").astype('int32')
df.head(3)
# 一下子提取所有数字列统计结果
df.describe()
df["bWendu"].mean()
df["bWendu"].max()
df["bWendu"].min()
df["bWendu"].std()
函数名 | 作用 |
---|---|
df[“xx”].unique() | 以 数组形式(numpy.ndarray)返回列的所有唯一值,即查询出xx列 的唯一值 |
df[“xx”].nunique() | 查询出xx列的唯一值的数量 |
df[“xx”].value_counts() | 查询出xx列每个值出现的个数 |
举例
df["fengxiang"].unique()
# array(['东北风', '北风', '西北风', '西南风', '南风', '东南风', '东风', '西风'], dtype=object)
df["fengxiang"].nunique()
# 8
df["fengxiang"].value_counts()
来自知乎,对于两个变量X、Y:
协方差:衡量同向反向程度,如果协方差为正,说明X,Y同向变化,协方差越大说明同向程度越高;如果协方差为负,说明X,Y反向运动,协方差越小说明反向程度越高。
相关系数:衡量相似度程度,当他们的相关系数为1时,说明两个变量变化时的正向相似度最大,当相关系数为-1时,说明两个变量变化的反向相似度最大
1. 协方差矩阵:
df.cov()
2. 相关系数矩阵
df.corr()
单独查看空气质量和最高温度的相关系数
df["aqi"].corr(df["bWendu"]) #0.07706705916811077
# 空气质量和温差的相关系数
df["aqi"].corr(df["bWendu"]-df["yWendu"]) #0.21652257576382047
Series.sort_values(ascending=True, inplace=False)
参数说明:
注意: 中文也可以排序
举例:
df["aqi"].sort_values(ascending=False)
DataFrame.sort_values(by, ascending=True, inplace=False)
参数说明:
①单列排序
df.sort_values(by="aqi")
②多列排序
# 按空气质量等级、最高温度排序,默认升序
df.sort_values(by=["aqiLevel", "bWendu"])
# 两个字段都是降序
df.sort_values(by=["aqiLevel", "bWendu"], ascending=False)
# 分别指定升序和降序
df.sort_values(by=["aqiLevel", "bWendu"], ascending=[True, False])