机器学习--------------数据预处理pandas

Pandas常用数据结构有两种:Series和DataFrame.这些数据结构构建在numpy数组之上,这意味着它们效率很高。

  • 导入相关库

import numpy as np

import pandas as pd

 

  • Series

        Series是一个带有名称和索引的一维数组,既然是数组,肯定要说到的就是数组中的元素类型,在Series中包含的数据类型可以是整数、浮点,字符串,python对象等。包含了dict的特点。也非常像ndarray。

 #存储了4个年龄:8/30/25/40

user_age = pd.Series(data=[18,30,25,40])

user_age.index = ["Tom", "Bob","Mary", "James"]  给索引加上名字

user_age.index.name = "name" 给索引列取个名字

user_age.name = "usre_age_info"   给Series取个名字

一个Series包括data、index、name属性。

  • DataFrame
  1. 通过dict构建

index = pd.Index(data=["Tom", "Bob", "Mary", "James"], name="name")

data  = {

           "age": [18,30,25,40],

            "city": ["Beijing", "Shanghai", "GuangZhou”, "ShenZhen"]

}

user_info = pd.DataFrame(data=data, index=index)

2.通过数组构建

data = [[18, "BeiJing"],

             [30,"ShangHai"],

              [25, "GuangZhou"],

              [40, "ShenZhen"]]

columns = ["age", "city"]

user_info = pd.DataFrame(data=data, index=index, columns=columns)

3.访问行

user_info.loc["Tom"]通过索引名访问某一行

user_info.iloc[0]通过索引访问某一行

user_info.iloc[1:3]通过切片访问多行

4.访问列

user_info.age

user_info["age"]

user_info["city", "age"]

user_info["sex"] = "male"增加新列

user_info.pop("sex")删除列

user_info["sex"]=["male", "female", "male", "male"]

user_info.assign(age_add_one = user_info["age"] + 1)不就地更新,产生意个新的DataFrame

user_info.assign(sex_code=np.where(user_info["sex"]=="male", 1, 0))有选择更新列

 

4.常用操作

user_info.info()了解数据的基本情况

user_info.shape

user_info.T

user_info.values数据

user_info.age.max(),cumsum(),min(),

user_info.describe()显示数据指标

user_info.value_counts()

user_info.age.idmax()

user_info.city.map(),apply()

user_info.rename(columns={}, index={})

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

RabinSong

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

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

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

打赏作者

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

抵扣说明:

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

余额充值