Pandas从入门到实战(day2)

新增数据列

读取csv数据

import pandas as pd

fpath = "./a.csv"
df = pd.read_csv(fpath)
print(df.head(2))

替换数据
df.loc[:, "week"] = df["week"].str. replace("#", "").astype('int32')
在这里插入图片描述

直接赋值

# 新增列
df.loc[:, "year"] = 2021
print(df.head())
# 运用前面的列进行操作
df.loc[:,"year-day"] = df['year'] - df['day']
print(df.head())

在这里插入图片描述

df.apply

沿着DataFrame轴应用函数。传递给函数的对象是Series对象,其索引要么是DataFrame的索引(axis=0),要么是DataFrame的列(axis=1)。

实列:如果week是1,代表周一,2代表周二.....将数字转化为汉字
def getWeek(x):
    if x["week"] == 1:
        return '周一'
    if x["week"] == 2:
        return '周二'
    if x["week"] == 3:
        return '周三'
    if x["week"] == 4:
        return '周四'
    if x["week"] == 5:
        return '周五'
    if x["week"] == 6:
        return '周六'
    if x["week"] == 3:
        return '周天'
    return "week转换错误!"


df.loc[:,"week_Chinese"] = df.apply(getWeek, axis=1)
print(df.head())

在这里插入图片描述
统计类型计数天数

df["week_Chinese"].value_counts()
在这里插入图片描述

df.assign

将新列分配给DataFrame。返回一个新对象,除新列外,还包含所有原始列。

	示例:将mounth+1放入一列,然后将year+1放入下一列
df.assign{
data1 = lambda x : x['mounth']+1
data2 = lambda x : x['year']+1
}

按条件选择分组分别赋值

df.loc[df['day']-15>0,'h_mounth']="下半月"
df.loc[df['day']-15<0,'h_mounth']="上半月"

pandas数据统计函数

汇总类总计

  1. 一下提取所有数字列表统计结果
    df.describe()
  2. 查看单个Series数据
    df['day'].mean()
  3. 最大值和最小值
    df['day'].max():最大值
    df['day'].max():最小值

唯一去重和按值统计

  1. 唯一性去重
    df['day'].unique()
  2. 按值计数
    df['day'].values_counts()

相关系数和协方差

  1. 相关系数:衡量同向反向程度
    -> 如果协方差为正,说X,Y同向变化,协方差越大说明同向程度越高;如果协方差为负,说明X,Y反向运动,协方差越小说明反向程度越高。
    df.corr()
    查看a和b的相关系数
    df['a'].corr(df['b'])

  2. 协方差:衡量相似程度
    -> 当他们的相关系数为1时,说明两个变量变化时的正向相似度最大,当相关系数为-1时,说明两个变化的反向相似度最大
    df.cov
    查看a和b的协方差
    df['a'].cov(df['b'])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊~小 l i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值