pandas与numpy初步应用

基础知识

处理数据一般分为几个阶段:数据整理与清洗、数据分析与建模、数据可视化与制表,Pandas与npArrays 是处理数据的理想工具

# 一般引用实例
import pandas as pd
import numpy as np 

数据结构

名称描述
Series带标签的一维同构数组
DataFramepandas常用,带标签的,大小可变的,二维异构表格
numpy.ndarraynpArrays常用,带标签的,大小可变的,二维异构表格,下文简称npArrays

数据格式转换

csv转DataFrame
df = pd.read_csv(path,header=None, encoding="gbk")  # header=None,读取时不加表头,默认加表头
DataFrame转csv
# 将数据保存成csv文件
df_name.to_csv(path,sep=',',index=False)  # index=False不加序列号
list转DataFrame
# df中添加一列
DataFrame['表头名'] = List  # List为一维列表,最后为一列值

# 将多行列表转为df
c={"列名1": ls_1,"列名2": ls_2}
df = pd.DataFrame(c,columns=['列名1', '列名2'])  #指定列名为name和id,顺序name先,id后
DataFrame转list

首先使用np.array()函数把DataFrame转化为np.ndarray(),再利用tolist()函数把np.ndarray()转为list

# 表头内容都提取
data = np.array(df).tolist()

# df.as_matrix指定取某些列
data=df.as_matrix(['表头名','表头名']).tolist()

# 以列为单位提取
data=df.values.tolist()
Series转DataFrame
# 将Series转换为DataFrame
dict_name = {'表头名': Series.values}
df = pd.DataFrame(dict_name)
npArrays转DataFrame
df = pd.DataFrame(npArrays,columns=['表头名'],index=None)  # npArrays转DataFrame
DataFrame转npArrays
df = pd.read_csv("data.csv")
data_np = np.array(df)
list转npArrays
npArrays = np.array(List)
npArrays转list
List = npArrays.tolist() 

处理数据

提取df数据
column_headers = list(df.columns.values)  # 有表头时将表头提取出来,并转化为npArrays
data = df.values  # 将df的值提取出来,以npArrays形式返回
处理NAN值(空缺或无穷小浮点数)
df.dropna(inplace=True)  # 去除空缺行

df.fillna(x,inplace = True)  # 用x替换nan值

print(np.isnan(df).any())  # 打印出每行是否存在nan值
DataFrame上下拼接
df = pd.concat([df_1, df_2])
删除一列
df_del = df.drop("表头名", 1) 
npArrays转置
npArrays_T = npArrays.transpose()

保存数据

# 将npArrays数据保存为csv
np.savetxt("文件名.csv", npArrays,delimiter=',', fmt='%s')

# 将DataFrame数据保存为csv
df.to_csv(path,sep=',',index=False)  # index=False不加序列号

Tips:会不断更新完善

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值