pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

import pandas as pd
# 读取全部文件内容
print(pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk", names=list("abcdefg")))
print("1,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 查看数据类型
print(pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk").info())
print("2,------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 默认切前5行
print(pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk").head())
print("3,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 默认切后5行
print(pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk").tail())
print("4,---------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 改变字段的数据类型为字符串
a = pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk")
a.top = a.top.astype("str")
print(a.info())
print("5,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 改变字段的数据类型为数字
b = pd.read_csv(r"D:mycode用pandasdatadataAnalyst_sql.csv", encoding="gbk")
# 把空值排除掉
b = b[~b['top'].isnull()]
b.top = b.top.astype('int64')
print(b.info())
print("6,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

print(b[["bottom", 'top']])
print("7,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 求平均值
b["avg_2"] = (b.bottom + b.top)/2
print(b["avg_2"])
print("8,---------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 平均值大于15的所以城市
c = b.query("avg > 15").city
print(c)
print("9,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 平均值大于15的城市等于上海
d = b[(b.city == '上海') & (b.avg > 15)]
print(d)
print("10,------------------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 转置:列转行、行转列
print(b.T)
print("11,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 升序
print(b.sort_values(by='avg'))
print(b.avg.sort_values())
print("12,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 返回数据框
print(b.sort_values("avg"))
print("13,------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 降序
print(b.sort_values("avg", ascending=False))
print("14,---------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 多个条件降序
print(b.sort_values(["avg", 'city'], ascending=False))
print("15,---------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 将平均值排名默认
b["rank"] = b.avg.rank(ascending=False, method="first")
# 将平均值排名最小
b["rank"] = b.avg.rank(ascending=False, method="min")
# 将平均值排名最大
b["rank"] = b.avg.rank(ascending=False, method="max")
print(b)
print("16,---------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

b.sort_values(by="avg", ascending=False)
print(b)
print("17,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 查唯一值
print(b.workYear.unique())
print("18,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 查唯一值计数
print(b.workYear.value_counts())
print("19,-----")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 描述统计汇总
print(b.describe())
print("20,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 求平均值的描述信息
print(b.avg.describe())
print("21,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 累加
print(b.sum())
print("22,------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 中位数
print(b.median())
print("23,----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 标准差
print(b.std())
print("24,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 方差
print(b.var())
print("25,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 数据框累加
print(b.cumsum())
print("26,---------------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 平均值累加
print(b.avg.cumsum())
print("27,-----------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 切割5等份
e = pd.cut(b.avg, bins=5)
print(e)
print("28,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 切割4等份挂挡
e = pd.cut(b.avg, bins=4, labels=list("abcd"))
print(e)
print("29,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 指定区间等份
print(pd.cut(b.avg, bins=[0, 5, 10, 20, 30]))
print("30,------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 按城市分组计数
print(b.groupby(by="city").count())
print("31,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 聚合最大值
print(b.groupby(by="city").max())
print(b.groupby(by="city")["avg"].max())
print("32,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 聚合最小值
print(b.groupby(by="city").min())
print(b.groupby(by="city")["avg"].min())
print("33,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 多重索引聚合
print(b.groupby(by=["city", "workYear"]).min())
print("34,--------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值

# 不同城市间最大值和最小值的差值
for k, v in b.groupby(by=["city"]):
print("最大值是:", max(v.avg), "最小值是:", min(v["avg"]))
print("差值是:", max(v.avg) - min(v["avg"]))
print("35,-------")

pandas进阶单表操作read_csv、默认切前后各5行、astype数据类型转换、query平均值、T转置列转行&行转列、升降序sort_values、rank排名、unique唯一值、describe描述、累加sum、median中位数、标准差std、方差var、数据框累加cumsum、cut切割、groupby分组、分组计数、聚合最大最小值、多重索引聚合、不同城市间最大值和最小值的差值