数据处理一

数据查询

df.set_index('索引列',inplace=True) 设置索引为指定列

inplace=Ture将修改作用于原对象,默认不修改,值为False

loc

语法规则:df.loc[行,列]

行和列的取值都必须为标签,可以为单个标签标签列表、也可以为标签范围,使用开始标签:结束标签实现。

也可以使用布尔索引查询,例如:df.loc[df['标签']<条件,:]

因为里面条件查询出的结果为一个布尔型的列表,满足条件最后则会输出。多个条件则每一个条件使用括号括起来且用&连接。

新增数据列

  1. 直接赋值、

    对原有列直接赋值,修改,需要相同长度。

    .str 转为字符串类型

    .astype('数据类型') 转为指定类型

    添加新列,直接使用赋值,会自动添加到表中

    例:

     df.loc[:,"添加的列名"] = 等长度的DataFarme对象,应该列表也可以
    
  2. df.apply

语法规则

	apply(python func) #调用python函数(Series调用)

将Series对象逐个作为参数调用python函数,返回值会直接赋值给原变量

	apply(numpy ufunc) #调用numpy通用函数、对象整个传入

比如numpy的sum函数,需要将sum用引号括起来,否则会被当做python函数,逐一传入。

axis属性(**DataFrame调用**)

0:对列进行计算,竖着的

1:对行进行计算,横着的

其他对象都可以调用方法

	GroupBy.apply()
	Resample.apply()
	Rolling.apply()
	Expanding.apply()

**重要用法**

和groupby函数一起使用

`df["标签"].value_counts() #计数`

**GroupBy.apply(function)**

Pandas的GroupBy遵从split、apply、combine模式

function的第一个参数是dataframe

function的返回结果,可是DataFrame、series、单个值,甚至和输入dataframe完全没关系

数据分组后是可以遍历的,而apply就相当于遍历这些分组,返回了一个结果,形成一个新的表
  1. df.assign方法

    可以同时添加多个新列

     df.assign(
     	列名1 = lambda x : x["列名"]+1,
     	列名2 = lambda x : x["列名"]+1
    
  2. 按条件选择分组分别赋值

    按条件选择数据,然后对这部分数据直接赋值,首先需要创建一个空列,当我们选择满足条件的行的时候就对新列进行赋值操作。

数据读取与保存

pd.read_XXX(“路径”,skiprows=从第几行开始读) #读取指定格式XXX文件
df.to_XXX(“路径”,index=指定索引) #保存为XXX类型文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值