精华内容
下载资源
问答
  • python筛选csv数据
    千次阅读
    2021-10-21 15:28:44
    # -*- coding: utf-8 -*-
    #from dao.updateMongo import *
    #from dao.insertMongo import *
    #from dao.selectMongo import *
    
    import pandas as pd
    
    #df = selectDataFrame(find={},col_name='sttemp')
    #df.pop('_id')
    #df.to_csv('.\output\目标.csv',encoding='gbk')
    
    
    
    #加encoding=‘gbk'  因为文件中存在中文, 功能--- 输出多个并行条件的表格数据 
    #这里的筛选条件可以根据用户需要进行修改
     
    df1 =pd.read_csv(u'.\output\目标.csv', encoding='gbk')
     
    outfile = df1[(df1[u'found']==True) & (df1['DtoE'] >= 0) & (df1['DtoE'] <= 4) &  (df1['E'] >= '2021-10-01')]
    print(outfile)
    outfile.to_csv('final_target.csv', index=False, encoding='gbk')
    
    print("===========运行结束 文件已导出 ============")

     功能:

        找出表头 found ==True 且 名子为“p”列中 数据符合 大于8小于17的数据,再将以上表筛选后输出一个新文件 outfile.csv

    更多相关内容
  • (注:本文写于做毕设期间,有处理大量csv文件的需要,故使用python强大的库资源来处理数据,希望对有需要的你提供帮助和启发) 使用Python(pandas)处理数据 原始数据和处理之后的样式 图中为一个csv文件,待处理的...
  • Python 提取csv数据筛选指定条件数据

    万次阅读 多人点赞 2021-02-03 19:39:56
    本文主要介绍通过Python提取csv文件中数据,并对数据进行处理。 编译器:Anaconda3 语言:Python3 提示:以下是本篇文章正文内容,本文仅为作者作为学习笔记使用,大佬勿喷 一、pandas与numpy? pandas是一个强大的...


    前言

    本文主要介绍通过Python提取csv文件中数据,并对数据进行处理。
    编译器:Anaconda3 语言:Python3


    提示:以下是本篇文章正文内容,本文仅为作者作为学习笔记使用,大佬勿喷

    一、使用pandas和numpy库

    通过pandas库可以从csv提取到数据,但是数据的格式是DateFrame 格式,因为我不懂怎么处理DateFrame 格式的数据,所以就使用numpy库,将提取的数据转化为数组格式,这样可以就可以通过对数组的处理方式处理csv文件的数据。写回csv文件的过程中,再转换为DateFrame即可。

    二、使用步骤

    1.引入库

    代码如下(示例):

    import pandas as pd
    import numpy as np
    

    2.读入数据

    本文是通过路径读取的文件。如果想通过文件名读取,需要把文件放与程序放到同一个文件夹中
    代码如下(示例):

    file1=pd.read_csv(r'C:\Users\86150\Desktop\1_Part2 附加测试题\Part2 附加测试题\4. data\data【各省-竞品】.csv')
    

    此时读出的数据是DateFrame格式,输出如下
    在这里插入图片描述


    3.转化格式

    将DateFrame 格式的数据转化为数组

    file1=np.array(file1)
    

    此时得到输出如下
    在这里插入图片描述

    4.处理数据

    我们将所有省份是‘黑龙江’的数据挑选出来,并放入新的数组中

    data=[]
    for item in file1:
        sh= item[0] 
        if "黑龙江" ==sh:
           # print(item)
            data.append(item) 
    

    这样就把数据挑选出来并存放在data中
    在这里插入图片描述

    总结

    这是第一次写博客,有很多不足的地方,希望大家指出,比如:如何直接把cell插入而不是以图片的形式。本文只是作者学习笔记,因为对很多库函数不知道,迫不得已想出来的方法,希望有大佬可以多讲解一些Python处理数据的方法,万分感谢!!!
    展开全文
  • 文章目录参考网址资料python使用csv库对csv文件特定行进行筛选筛选csv文件中特定的行使用pandas和numpy库对数据进行提取与筛选 参考网址资料 (自己整理一遍过程是为了加深自己对csv库的理解,方便以后的查阅。大家...

    参考网址资料

    (自己整理一遍过程是为了加深自己对csv库的理解,方便以后的查阅。大家直接看这两个博主的帖子就足够了)
    Python数据分析基础——CSV文件——筛选特定的行
    Python 提取csv数据并筛选指定条件数据
    csv — CSV 文件读写

    python使用csv库对csv文件特定行进行筛选

    先给出一个官方文档中简单的csv读文件实例:
    (实际上csv.reader里的delimiter和quotechar可以忽略,具体用法可以去官方文档查看)

    import csv
    with open('eggs.csv', newline='') as csvfile:
    	spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
    	for row in spamreader:
    		print(', '.join(row))
    #运行结果:
    Spam, Spam, Spam, Spam, Spam, Baked Beans
    Spam, Lovely Spam, Wonderful Spam
    

    再给出一个官方文档中一个简单的写文件示例:

    import csv
    	with open('names.csv', newline='') as csvfile:
    		reader = csv.DictReader(csvfile)
    		for row in reader:
    			print(row['first_name'], row['last_name'])
    #运行结果
    Eric Idle
    John Cleese
    
    print(row)
    {'first_name': 'John', 'last_name': 'Cleese'}
    

    可以看出,我们都是先用open函数打开一个文件指针,然后再通过(读或写)的reader函数进行操作

    接下来我们可以对文件内容进行筛选了

    筛选csv文件中特定的行

    在文件中,当行中的值满足一个具体条件时,才需要保留这些行。在这种情况下,可以检验行中的值是否满足具体的条件,然后筛选出满足条件的行。

    例如在我这里的文件里,我希望留下image_id符合某个范围的数据
    在这里插入图片描述
    先用读指针对要读的文件进行操作,再用写指针对要写入的文件进行操作。

    写入文件时,先写入文件的表头(第一行,标题行)
    再用for循环和if语句筛选第一列中符合条件的那一行,有符合条件的那一行就把那一行都写入即可。

    with open("F\inputfile.csv",'r',encoding='UTF-8') as load_input:#打开要读取的csv文件进行只读操作
        with open("outputfile.csv", 'w', newline='',encoding='UTF-8') as out_output: #打开要写入的csv文件进行写操作
            ereader = csv.reader(load_input) #用reader函数读入文件指针
            ewriter = csv.writer(out_output) #用writer函数读入文件指针
            eheader = next(ereader)  # 取出文件的第一行,也就是表头
            ewriter.writerow(eheader)  # 把表头写入我们要写入的文件
            for row_list in ereader:
                image_id = str(row_list[0]).strip() # 选取文件的第一列(即image_id那一列) 
                if image_id > 10000:  #如果第一列中的image_id数值大于10000
                    expression_writer.writerow(row_list) #把这一行都写入要写入的文件
    

    注意,之前的博主没有在open函数中加入encoding部分,不加入的话默认时gbk格式,这样有的时候用print函数会报错,我这里已经加上了

    使用pandas和numpy库对数据进行提取与筛选

    https://blog.csdn.net/m0_46159136/article/details/113618135

    改日自己亲测后整理

    展开全文
  • python之pandas数据筛选csv操作

    千次阅读 2020-12-01 16:50:47
    本博主要总结DaraFrame数据筛选方法(loc,iloc,ix,at,iat),并以操作csv文件为例进行说明1. 数据筛选a b c0 0 2 41 6 8 102 12 14 163 18 20 224 24 26 285 30 32 346 36 38 407 42 44 468 48 50 529 54 56 ...

    本博主要总结DaraFrame数据筛选方法(loc,iloc,ix,at,iat),并以操作csv文件为例进行说明

    1. 数据筛选

    a b c0 0 2 4

    1 6 8 10

    2 12 14 16

    3 18 20 22

    4 24 26 28

    5 30 32 34

    6 36 38 40

    7 42 44 46

    8 48 50 52

    9 54 56 58

    (1)单条件筛选

    df[df['a']>30]

    # 如果想筛选a列的取值大于30的记录,但是之显示满足条件的b,c列的值可以这么写

    df[['b','c']][df['a']>30]

    # 使用isin函数根据特定值筛选记录。筛选a值等于30或者54的记录

    df[df.a.isin([30, 54])]

    (2)多条件筛选

    可以使用&(并)与| (或)操作符或者特定的函数实现多条件筛选

    # 使用&筛选a列的取值大于30,b列的取值大于40的记录

    df[(df['a'] > 30) & (df['b'] > 40)]

    (3)索引筛选

    a. 切片操作

    df[行索引,列索引]或df[[列名1,列名2]]

    #使用切片操作选择特定的行

    df[1:4]

    #传入列名选择特定的列

    df[['a','c']]

    b. loc函数

    当每列已有column name时,用 df [ ‘a’ ] 就能选取出一整列数据。如果你知道column names 和index,且两者都很好输入,可以选择 .loc同时进行行列选择。

    In [28]: df.loc[0,'c']

    Out[28]: 4In [29]: df.loc[1:4,['a','c']]

    Out[29]:

    a c1 6 10

    2 12 16

    3 18 22

    4 24 28In [30]: df.loc[[1,3,5],['a','c']]

    Out[30]:

    a c1 6 10

    3 18 22

    5 30 34

    c. iloc函数

    如果column name太长,输入不方便,或者index是一列时间序列,更不好输入,那就可以选择 .iloc了,该方法接受列名的index,iloc 使得我们可以对column使用slice(切片)的方法对数据进行选取。这边的 i 我觉得代表index,比较好记点。

    In [35]: df.iloc[0,2]

    Out[35]: 4In [34]: df.iloc[1:4,[0,2]]

    Out[34]:

    a c1 6 10

    2 12 16

    3 18 22In [36]: df.iloc[[1,3,5],[0,2]]

    Out[36]:

    a c1 6 10

    3 18 22

    5 30 34In [38]: df.iloc[[1,3,5],0:2]

    Out[38]:

    a b1 6 8

    3 18 20

    5 30 32

    d. ix函数

    ix的功能更加强大,参数既可以是索引,也可以是名称,相当于,loc和iloc的合体。需要注意的是在使用的时候需要统一,在行选择时同时出现索引和名称, 同样在同行选择时同时出现索引和名称。

    df.ix[1:3,['a','b']]

    Out[41]:

    a b1 6 8

    2 12 14

    3 18 20In [42]: df.ix[[1,3,5],['a','b']]

    Out[42]:

    a b1 6 8

    3 18 20

    5 30 32In [45]: df.ix[[1,3,5],[0,2]]

    Out[45]:

    a c1 6 10

    3 18 22

    5 30 34

    e. at函数

    根据指定行index及列label,快速定位DataFrame的元素,选择列时仅支持列名。

    In [46]: df.at[3,'a']

    Out[46]: 18

    f. iat函数

    与at的功能相同,只使用索引参数

    In [49]: df.iat[3,0]

    Out[49]: 18

    2. csv操作

    csv文件内容

    Supplier Name,Invoice Number,Part Number,Cost,Purchase Date

    Supplier X,001-1001,2341,$500.00 ,1/20/14Supplier X,001-1001,2341,$500.00 ,1/20/14Supplier X,001-1001,5467,$750.00 ,1/20/14Supplier X,001-1001,5467,$750.00 ,1/20/14Supplier Y,50-9501,7009,$250.00 ,1/30/14Supplier Y,50-9501,7009,$250.00 ,1/30/14Supplier Y,50-9505,6650,$125.00 ,2002/3/14Supplier Y,50-9505,6650,$125.00 ,2002/3/14Supplier Z,920-4803,3321,$615.00 ,2002/3/14Supplier Z,920-4804,3321,$615.00 ,2002/10/14Supplier Z,920-4805,3321,$615.00 ,2/17/14Supplier Z,920-4806,3321,$615.00 ,2/24/14

    (1)csv文件读写

    import pandas aspd

    # 读写csv文件

    df= pd.read_csv("supplier_data.csv")

    df.to_csv("supplier_data_write.csv",index=None)

    (2)筛选特定的行

    #Supplier Nmae列中姓名包含'Z',或者Cost列中的值大于600

    print(df[df["Supplier Name"].str.contains('Z')])

    print(df[df['Cost'].str.strip('$').astype(float) > 600])

    print(df.loc[(df["Supplier Name"].str.contains('Z'))|(df['Cost'].str.strip('$').astype(float) > 600.0),:])

    #行中的值属于某个集合

    li= [2341,6650]

    print(df[df['Part Number'].isin(li)])

    print(df.loc[df['Part Number'].astype(int).isin(li),:])

    #行中的值匹配某个模式

    print(df[df['Invoice Number'].str.startswith("001-")])

    (3)选取特定的列

    #选取特定的列

    #列索引值,打印1,3列

    print(df.iloc[:,1:4:2])

    #列标题打印

    print(df.loc[:,["Invoice Number", "Part Number"]])

    #选取连续的行

    print(df.loc[1:4,:])

    展开全文
  • 在使用数据文本文件中,有一种通用格式——CSV(Comma-Separated Values)的文件,它将多列数据用逗号分割,其中CSV文件经常使用GBK编码,这是因为Excle表格另存为CSV文件时使用GBK编码。 例如: 我们对这个Excel...
  • 下面小编就为大家分享一篇使用python获取csv文本的某行或某列数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 有些人看到这个问题觉得不是问题,是嘛,不就是df.col[]函数嘛,其实忽略了一个重点,那就是我们要省去把csv文件全部读取这个过程,因为如果在面临亿万级别的大规模数据,得到的结果就是boom,boom,boom。...
  • 1、针对更为复杂的CSV文件(含有标题和多列)做简单的处理和过滤“CSV测试数据.csv”文件里的内容:代码,对“花费”进行了去除“$”和类型转换,使用loc函数将满足性别是“女”或花费大于750的行取出,最后写入文件...
  • 如何筛选出日期不等于2022/4/3的行,并把行保存为列表? 2.脚本运行结束后,表格里更新账号里现有的欢乐豆,以及最近一次刷豆日期; 在python里该如何实现?一定要用pandas么?或者一定要用csv么?有无其它方案,...
  • 首先导入pandas库import pandas as pd然后使用read_csv来打开指定的csv文件df = pd.read_csv('./IP2LOCATION.csv',encoding= 'utf-8')这个函数里面需要写入csv文件的路径,如果是把csv文件保...
  • 参考文献:《Python数据分析基础》《Python标准库》《Python编程从入门到实践》 一.行中的值满足某个条件 有时,当行中的值满足一个具体条件时,才需要保留这些行。在这种情况下,可以检验行中的值是否满足具体的...
  • 筛选出多个txt文件中需要的数据 二、数据准备 这是我自己建立的要处理的文件,里面是随意写的一些数字和字母 三、程序编写 import os def eachFile(filepath): pathDir =os.listdir(filepath) #遍历...
  • python批量读取csv并提取其中多行生成新csv
  • PythonCSV文件数据进行可视化

    万次阅读 多人点赞 2020-04-08 15:41:37
    分别使用Python中的csv以及json模块对他们进行处理。 然后,我们再根据下载的数据,使用matplotlib创建一个图标。 1、获取CSV文件 我们将首先处理少量的锡卡尔的CSV格式的天气数据,将文件sitka_weather_07-2018_...
  • 1. 数据筛选a b c0 0 2 41 6 8 102 12 14 163 18 20 224 24 26 285 30 32 346 36 38 407 42 44 468 48 50 529 54 56 58(1)单条件筛选df[df[‘a’]>30]如果想筛选 a 列的取值大于 30 的记录, 但是之显示满足条件的...
  • Python处理CSV文件的几个方法

    千次阅读 2021-03-18 11:41:14
    筛选特定的行有些时候,你并不需要文件中所有的数据。例如,你可能只需要一个包含特定词或数字的行的子集,或者是与某个具体日期关联的行的子集。在这些情况下,可以用 Python 筛选出特定的行来使用。你应该很熟悉...
  • 作者 | 蓝鲸网站分析博客...一类是会爬虫但不知道如何进一步做数据分析的,一类是平常用 Excel 做分析但不太会用 Python 分析的。如果和你很像,那下面这篇系统长文会很适合你,建议先收藏。Excel 是数据分析中最常...
  • 我来演示一下:假设您在file.csv中保存了下一个数据文件:2013-07-18 04:54:15.871 UDP 172.12.332.11:20547 172.12.332.11:20547 -> 172.56.213.80:53 CREATE Ignore 02013-07-18 04:54:15.841 UDP 19...
  • 解决方案 Here's a solution in pure python that writes the filtered output to a textfile (csv) as requested. import csv with open('games.csv', 'rb') as csvfile: # handle header line, save it for ...
  • 一、第一种方法读取后为list,再转化为数据框 import csv from pandas.core.frame import DataFrame csv_file=csv.reader(open('合并.csv','r')) content=[] #用来存储整个文件的数据,存成一个列表,列表的每一个...
  • 原始数据 # -*- coding: utf-8 -*- """ Created on Thu Oct 14 22:09:50 2021 @author: Machi """ import pandas as pd df = pd.read_csv('data.csv') df1 = df['x'].drop_duplicates() print(df) print() ...
  • Python批量处理csv文件(筛选列)

    千次阅读 2020-12-09 16:59:27
    批量读取同一文件夹下的csv文件,进行数据处理(这里是挑选需要的列向量,生成新文件),保存到新文件夹(csv文件同名) 代码 #!/user/bin/env python3 # -*- coding: utf-8 -*- import os import re import ...
  • Python数据分析基础-csv

    2021-03-09 16:29:13
    csv(input_file)#读取csv文件 print(data_frame) data_frame.to_csv(output_file,index=False)#输出csv文件内容 当数据出现错误,有多余的数据使用’,'分隔采用python内置模块csv模块进行处理 基于Python,使用csv...
  • 作者:高源 ...文章目录.csv数据python对.csv数据进行操作一、将数据写入csv文件中二、从csv文件中读取数据通过SQL对csv文件操作1.创建测试表:m_test2.aa.csv3.读取aa.csv到m_test表 .csv数据 逗号分隔.
  • 使用PythonCSV文件中查找中值

    千次阅读 2020-12-21 02:59:04
    我有一个名为'工资.csv'文件内容如下:City,Job,SalaryDelhi,Doctors,500Delhi,Lawyers,400Delhi,Plumbers,100London,Doctors,800London,Lawyers,700London,Plumbers,300Tokyo,Doctors,900Tokyo,Lawyers,800Tokyo,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,424
精华内容 5,369
关键字:

python筛选csv数据