python读取csv并根据指定属性值提取数据

在这里插入图片描述
如上表csv数据,将productId=6666并且target=1和3的数据提取出来另存文件。
代码如下:

# -*- coding:utf-8 -*-
# 功能:将target=1和3并且productId=6666的数据取出来

import pandas as pd
import datetime

product_6666 = [6666]

def result(data):
    data_6666_1 = data[(data['target'] == 1) & (data['productId'].isin(product_6666))]
    data_6666_3 = data[(data['target'] == 3) & (data['productId'].isin(product_6666))]

    # 2021-03-15 12
    day = datetime.datetime.strptime(data['callinTimeH'][0], '%Y-%m-%d %H').strftime('%m%d')   #0315

    data_6666_1.to_csv('6666/' + 'data' + day + '_6666.csv', sep=',', index=False)    # 写入csv,文件名为data0315_6666.csv
    data_6666_3.to_csv('6666/' + 'data' + day + '_6666.csv', sep=',', mode='a', index=False, header=None)  # mode='a'追加写入,header=None不写入表头
    print('Finish!')

dataFile = pd.read_csv('data.csv', sep=',')  # 读取数据
result(dataFile)        # 调用函数

结果如下:
在这里插入图片描述

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
python-pandas的一些小练习——东北大学大数据数据挖掘实训Python基础二(2) 实训练习:练习使用pandas 包中的dataframe和方法。 1将数据读取为dataframe类型,命名为df 2查看数据的形状[了解数据有多少行、多少列] 3查看数据的最开始的7条数据和尾部的3条数据 4查看数据的各字段的类型 5查看数据是否有缺失 6如果有缺失,进行补0操作 7从df中按字段取出‘ date’’dist’和‘ flight’形成新的df1 8从df中按位置选取行为3和4,列为0,1的数据形成新的df2 9在df中添加一列‘ low_dest’,内容是‘ dest’这列的字符串的小写形式 10从df中选取‘ dist’大于1000并且小于1200的数据作为一个新的df3 11从df中选取‘ time’大于100的数据做为新的df4 12将df3和df4合并为一个dataframe,命名为df5 13取出df3中的‘ time’,‘dist’ 这两列做为df6, 求出df6中每列中最大与最小的差(运用lambda函数的方式进行求解 ) 14将df根据“ dest”分组,统计各目的地,都有多少条数据,命名为“ dest_count”,然后将“ dest”和“ dest_count”组成新的dataframe命名为df7 15根据dep_delay不为0,统计df中有多少次航班起飞延误 16利用plane字段,统计df中不同航班的飞行次数,以plane和plane_cout格式保存为df8 17利用carrier字段,计算df中carrier字段不同属性数据数据量的比(如:XE的数据量与MQ的数据量的比) 18分别将df7和 df8保存到本地文件,文件名分别为df7.csv和df8.csv
机器学习课设基于python实现决策树对天气降雪进行预测判断源码(带界面和数据)+项目使用说明.zip 【资源介绍】 该项目是个人毕设项目,答辩评审分达到95分,代码都经过调试测试,确保可以运行!欢迎下载使用,可用于小白学习、进阶。 该资源主要针对计算机、通信、人工智能、自动化等相关专业的学生、老师或从业者下载使用,亦可作为期末课程设计、课程大作业、毕业设计等。 项目整体具有较高的学习借鉴价!基础能力强的可以在此基础上修改调整,以实现不同的功能。 本项目由三个部分组成,分别是数据部分,决策树训练部分,界面设计部分,其组成如下 └─决策树训练     CART.py //CART算法实现及模型训练   config.py //参数设置   data_read.py //数据预处理以及数据集划分    main.py //主执行函数   vail_and_test.py //验证和预测 └─数据及模型   BTree.pickle //决策树模型    data.csv    rate.csv   test_data.csv //测试数据集   test_kunming.csv //原始数据集 └─界面设计   Ui_design.py //各控件实现    WidgetMain.py //主界面 ## 2.数据处理 ### 2.1 数据预处理   原始的数据集为**test_kunming.csv**,使用的是昆明市2004年到2017年的数据。   **首先为避免数据集中出现nan**,需要对nan数据进行排查,由于该数据集是基于时间排序的,相近的几天天气情况都差不多,所以我们碰到nan数据是可以使它等于前两行该属性数据的平均。   **再解决数据集中正负样本不均匀的情况**,由于昆明市地处较南,虽然海拔较高,但下雪仍不频繁,4869条数据中仅有17条下雪数据,我们把下雪看作是正样本,不下雪看作是负样本,根据正负样本严重不均衡的情况我在这里采用了正样本扩大的方法,具体如下:   1.将正样本叠加,直到其数量等于负样本的1/3,数量表达式为$正样本数=\frac{负样本数}{正样本数\times 3}$。   2.将此时的正样本全部特征分别乘0.9和1.1,再将这三个正样本集合叠加,得到的正样本集数量就几乎等于负样本集数量。   **然后再去掉数据集中对最后影响不大的特征**,首先我们直接排除年月日,因为年月日并不具有泛用性,一天是否下雪应该取决于一天具体的天气情况。然后在剩下的特征中,我们采用**主成分分析(PCA)**的方法,选出7个特征(我在这里选择了7个特征,具体调整**config.py**的**choose_feature**参数),做法如下:   1.分割下雪标签和其他特征,下雪标签是我们的结果,不应比较它的特征。   2.数据标准化,这里采用了最大最小标准化。如果不进行标准化,数据较大的特征其特征就越大。   3.构建协方差方程,获得特征及其对应的特征,并将其存储到**rate.csv**中。   4.基于特征进行排序,选择前七大特征的特征,并从上面处理好的数据集中选出这七个标签所对应的所有数据并且加上下雪标签组成新的数据集,并存放在**data.csv**中。   现在,我们得到了一组可以直接使用的数据。 ### 2.2 划分数据集   从**data.csv**中直接读取数据,并采用随机抽取的方法获得训练集,验证集,测试集。其比例大致为31:4:5 并将测试集数据存储为**test_data.csv**留作备用。 ## 3.模型训练   本项目中我们使用了cart算法递归地构建了决策树模型,并将训练后的决策树模型用列表保存了下来。其中,算法的具体流程如下: ![流程图](graph/流程图.png) 通过训练,得到的模型如下: [812.5, [7.15, [0.8, [7.4, 左, [12.5, [1.2, [2.2, ['YES'], ['YES']],

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值