一个很偶然的机会,主动出击挑战一个之前没有尝试过的新东西,在做的过程中需要处理一些csv文件的数据,以下是我总结的一些小方法,希望对和我一样的新手朋友们有所帮助,初次尝试,望路过的朋友有更好的方法可以留言补充,小弟在此谢过~

1. 读取文件的某一列并追加到另一个文件中

import pandas as pd
filename = '/Users/nova.li/Desktop/workspace/对齐数据/6w_risk_date_merge.csv'
df1 = pd.read_csv(filename)
#设置索引从1开始
df1.index = df1.index + 1 #从这个csv文件中读取所要追加到另一个文件的原始文件并取列名
df2 = pd.read_csv('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106.csv')
df1['label'] = df2['label_fpd4']
#输出重写之后的文件,并设置所有列的列名为id,表中的小数位为0
df1.to_csv(filename, index=True, index_label='id',float_format='%.0f')

2.删除csv文件中的某列数据

import pandas as pd
filename = '/Users/nova.li/Desktop/workspace/对齐数据/6w_risk_date_merge.csv'
df = pd.read_csv(filename)
df = df.drop(['md5(mobile)', 'date'], axis=1)

3. 修改指定某列列名

import pandas as pd
filename = '/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_label.csv'
df = pd.read_csv(filename)
df.rename(columns={'label_mob3': 'label'}, inplace=True)
df.to_csv(filename)

4. 查看某一列数值为1的个数

pd.read_csv('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106.csv')['label_mob3'].sum()

5. 替换列数据

import pandas as pd
fname = '/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_done.csv'
df = pd.read_csv(fname)
data = pd.read_csv('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106.csv')
#删除原来的列
df = df.drop(['label'], axis=1)
#新增一列,并将另一个csv文件的某一列添加过来
df['new_label'] = data['label_mob1']
#更改列名
df.rename(columns={'new_label': 'label'}, inplace=True)
df.to_csv(fname, index=False)

6. 按比例切分文件

#安装scikit-learn(sklearn)模块
pip install scikit-learn
import pandas as pd
from sklearn.model_selection import train_test_split
import numpy as np data = pd.read_csv('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_done2.csv')
train,test = train_test_split(data,test_size=0.3,) #测试集的比例是30%
np.savetxt('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_train.csv',train,delimiter=",",fmt='%s') #delimiter=“,” 才能一个数据一个格
np.savetxt('/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_test.csv',test,delimiter=",",fmt='%s')

7. 读取某个文件的前多少行

import pandas as pd
fname = '/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_test.csv'
df = pd.read_csv(fname)
df = df.head(43418)
df.to_csv(fname, index=False)

8. 读取某个文件的后多少行

import pandas as pd
fname = '/Users/nova.li/Desktop/workspace/对齐数据/6w_2104_2106_label_mob1_test.csv'
df = pd.read_csv(fname)
df = df.tail(18608)
df.to_csv(fname, index=False)

9. 将某一列数据转化为整数

fname = '/Users/nova.li/Desktop/workspace/对齐数据/predict_res_2e2d6f4f_csv.csv'
df = pd.read_csv(fname)
#重新赋值方式
df['id'] = df['id'].astype('int')
df['model_label'] = df['model_label'].astype('int')
df.to_csv(fname, index=False)

10. 空值填充

import pandas as pd
fname = '/Users/nova.li/Desktop/workspace/对齐数据/predict_res_2e2d6f4f_csv.csv'
df = pd.read_csv(fname)
df.fillna(9999, inplace = True)
df.to_csv(fname, index=False)
#print(df.to_string())

我也不知道我一个做前端的为什么一下子就接触到python的东西了,总而言之,多学点东西总是好的,继续努力,今天也要加油鸭~

Pandas 数据的一些基本操作的更多相关文章

  1. Python的工具包[1] -> pandas数据预处理 -> pandas 库及使用总结

    pandas数据预处理 / pandas data pre-processing 目录 关于 pandas pandas 库 pandas 基本操作 pandas 计算 pandas 的 Series ...

  2. 数据分析与展示——Pandas数据特征分析

    Pandas数据特征分析 数据的排序 将一组数据通过摘要(有损地提取数据特征的过程)的方式,可以获得基本统计(含排序).分布/累计统计.数据特征(相关性.周期性等).数据挖掘(形成知识). .sort ...

  3. pandas小记:pandas数据输入输出

    http://blog.csdn.net/pipisorry/article/details/52208727 数据输入输出 数据pickling pandas数据pickling比保存和读取csv文 ...

  4. mysql(三) 数据表的基本操作操作

    mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...

  5. Pandas数据排序

    Pandas数据排序 .sort_index() 在指定轴上根据索引进行排序,索引排序后内容会跟随排序 b = pd.DataFrame(np.arange(20).reshape(4,5),inde ...

  6. pandas数据操作

    pandas数据操作 字符串方法 Series对象在其str属性中配备了一组字符串处理方法,可以很容易的应用到数组中的每个元素 t = pd.Series(['a_b_c_d','c_d_e',np. ...

  7. Pandas数据存取

    pd.read_excel('foo.xlsx', 'Sheet1', index_col=None, na_values=['NA']) Pandas数据存取 Pandas可以存取多种介质类型数据, ...

  8. pandas 数据预处理

    pandas 数据预处理 缺失数据处理 csv_data=''' A,B,C,D 1.0,2.0,3.0,4.0 5.6,6.0,,8.0 0.0,11.0,12.0,,''' import pand ...

  9. Pandas数据规整

    Pandas数据规整 数据分析和建模方面的大量编程工作都是用在数据准备上的,有时候存放在文件或数据库中的数据并不能满足数据处理应用的要求 Pandas提供了一组高级的.灵活的.高效的核心函数和算法,它 ...

随机推荐

  1. 设置Sublime插件快捷键--实现CSS颜色选取

    安装插件ColorPicker 如果你经常要查看或设置颜色值,这个插件可以很方便地调用你本机的调色板应用.(译者扩充:)这是一个双向的功能,你既可以在调色板中选择一个颜色,然后按"确定&qu ...

  2. SpringCloud商品服务调用方式之feign

    简介:改造电商项目 order-service服务 调用商品服务获取商品信息 Feign: 伪RPC客户端(本质还是用http) 官方文档: https://cloud.spring.io/sprin ...

  3. linux》centos6.1.环境下发送邮件设置

    转自https://blog.csdn.net/bodybo/article/details/80817968 一. Sendmail安装 在CentOS下,sendmail一般默认是随操作系统一起安 ...

  4. Shell脚本逐行读取文本内容并拆分,根据条件筛选文件

    时间:2018-11-13 整理:byzqy 需求: 最近帮朋友写了一段脚本,他的需求是根据一份产品清单,去服务器上捞取对应产品编号的测试Log,数量大概有9000~10000条左右.文本内容大致如下 ...

  5. SSD算法原理

    Paper: https://arxiv.org/pdf/1512.02325.pdf SSD用神经网络(VGG)提取多层feature map ,来实现对不同大小物体的检测.如下图所示: We us ...

  6. 运行uni-app到微信开发者工具

    1.工具及环境 HBuilder X 微信开发者工具 Node.js,测试:node -v(node安装) 和 npm -v(自带的npm也安装成功) 2.创建uni-app项目: 在点击工具栏里的文 ...

  7. linux centos7 df命令

    2021-08-04 1. df 命令简介 linux 中 df 命令的功能是用来检查 linux 服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信 ...

  8. Nginx+Tomcat+Memcached实现session共享

    实验环境: server1:nginx tomcat memcached server2:tomcat memcached Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入 ...

  9. centos7安装privoxy

    本文分为三部分,第一部分是在阿里云的ECS上安装Privoxy,第二部分是在AWS的EC2上安装Privoxy,第三部分是Privoxy的配置. 第一部分:阿里云ECS安装Privoxy 配置yum源 ...

  10. webgl 图像处理 加速计算

    webgl 图像处理 webgl 不仅仅可以用来进行图形可视化, 它还能进行图像处理 图像处理1---数据传输 webgl 进行图形处理的第一步: 传输数据到 GPU 下图为传输点数据到 GPU 并进 ...