kaggle竞赛实战4

本文补充第二种特征生成方法,第一种是A属性等于1,针对一个卡号的B属性各个值求和,还有种方法是统计各个维度上的统计指标(求和等指标)

# In[86]:


transaction=pd.read_csv('d:/transaction_d_pre.csv',low_memory=False)


# In[87]:


transaction.head(5)


# In[98]:


numeric_cols =  ['authorized_flag',  'category_1', 'installments', 'category_3',  'month_lag','purchase_month',
 'purchase_amount', 'category_2', 
 'purchase_month', 'purchase_hour_section',
  'most_recent_sales_range', 'most_recent_purchases_range']


# In[99]:


categorical_cols =  ['city_id', 'merchant_category_id', 'merchant_id', 'state_id', 'subsector_id', 'category_4','purchase_date']


# In[100]:


aggs={}


# In[101]:


for col in numeric_cols:
    aggs[col]= ['nunique', 'mean', 'min', 'max','var','skew', 'sum']


# In[102]:


for col in categorical_cols:
    aggs[col]=['nunique']
aggs


# In[103]:


aggs['card_id']=['size','count']#加上card_id


# In[104]:


cols=['card_id']


# In[105]:


for key in aggs.keys():
    cols.extend([key+''+stat for stat in aggs[key]])#把名称组合出来


     df = transaction[transaction['month_lag']<0].groupby('card_id').agg(aggs).reset_index() 
     df.columns = cols[:1] + [co+'_hist' for co in cols[1:]] 
      
     df2 = transaction[transaction['month_lag']>=0].groupby('card_id').agg(aggs).reset_index() 
     df2.columns = cols[:1] + [co+'_new' for co in cols[1:]] 
     df = pd.merge(df, df2, how='left',on='card_id') 
      
     df2 = transaction.groupby('card_id').agg(aggs).reset_index() 
     df2.columns = cols 
     df = pd.merge(df, df2, how='left',on='card_id') 
     del transaction 
     gc.collect() 

     # 生成训练集与测试集 
     train = pd.merge(train, df, how='left', on='card_id') 
     test =  pd.merge(test, df, how='left', on='card_id') 
     del df 
     train.to_csv(\ preprocess/train_groupby.csv\ , index=False) 
     test.to_csv(\ preprocess/test_groupby.csv\ , index=False) 
      
     gc.collect() 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/20461.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jlink驱动包

本文分享多个版本的Jlink安装驱动包。 链接: https://pan.baidu.com/s/19P2HymfPTFK2IEfAjEoSpA 提取码: cj6k 主要分享如下版本的&#xff1a; Jlink安装驱动方法&#xff1a; 点击下一步&#xff1a; 点击 同意 然后进行安装。 安装完成后点击完成 使用方法&#xff1a; …

文件存储目录设计 文件资源地址URI的设计

文件存储目录设计 1. 前言2. 业界调研2.1 业界各大厂文件命名百度阿里-淘宝腾讯美团抖音CSDN 2.2 对象存储2.2.1 功能说明2.2.2 OSS命名建议 3. 文件目录设计4. 其他建议 1. 前言 文件为什么要做目录管理&#xff1f;文件资源地址又该如何设计定义&#xff1f; 设计的由来都是…

Ubuntu 离线安装 gcc、g++、make 等依赖包

前言 项目现场的服务器无法连接互联网&#xff0c;需要提前获取 gcc、g、make 等依赖包。 一、如何获取依赖包 需要准备一台可以连接互联网的电脑&#xff08;如&#xff1a;个人电脑上的虚拟机安装一个与服务器一样的系统&#xff09;&#xff0c;用于下载依赖包。之后把通过…

Python Arr用法:深度解析与实战应用

Python Arr用法&#xff1a;深度解析与实战应用 在Python编程中&#xff0c;数组&#xff08;通常称为列表或list&#xff09;是一种常用的数据结构&#xff0c;用于存储和操作一系列有序的元素。然而&#xff0c;Python的标准库并未直接提供类似C语言中的数组类型&#xff0c…

【Linux】Linux工具——yum,vim

1.Linux 软件包管理器——yum Linux安装软件&#xff1a; 源代码安装&#xff08;不建议&#xff09;rpm安装&#xff08;类似Linux安装包&#xff0c;版本可能不兼容&#xff0c;不推荐&#xff0c;容易报错&#xff09;yum安装&#xff08;解决了安装源&#xff0c;安装版本&…

四川音盛佳云电子商务有限公司引领抖音电商新风潮

在数字化浪潮席卷全球的今天&#xff0c;电商行业已成为推动经济发展的重要力量。作为这一领域的佼佼者&#xff0c;四川音盛佳云电子商务有限公司凭借其在抖音电商服务领域的专业实力和独特视角&#xff0c;正引领着行业的新风潮&#xff0c;助力品牌实现快速增长和腾飞。 四…

使用Python发送企业微信消息

大家好&#xff0c;在本文中&#xff0c;我们将探讨如何使用 Python 发送企业微信消息。将详细说明如何通过 Python 脚本实现消息的发送。无论是希望自动化某些任务&#xff0c;还是想要快速地向团队发送实时通知&#xff0c;本文都将为您提供一站式的解决方案。 企业微信提供了…

找不到msvcr100.dll如何修复,分享几种有效的修复方法

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“找不到msvcr100.dll”。这个错误通常发生在运行某些程序时&#xff0c;系统无法找到所需的动态链接库文件。这个问题可能会给用户带来困扰&#xff0c;但是幸运的是&#xff0c;有一些简单…

面试网易大模型算法岗,题是一道比一道难啊。。。

暑期实习基本结束了&#xff0c;校招即将开启。 不同以往的是&#xff0c;当前职场环境已不再是那个双向奔赴时代了。求职者在变多&#xff0c;HC 在变少&#xff0c;岗位要求还更高了。提前准备才是完全之策。 最近&#xff0c;我们又陆续整理了很多大厂的面试题&#xff0c…

汇编原理 | 二进制、跳转指令、算数运算、

一.二进制 two complement reprentation&#xff08;补码&#xff09; 二进制的运算&#xff1a; 6的二进制 0110 -6的二进制 如何表示&#xff1f; 四个bit的第一个bit表示符号&#xff1a;1负0正 -6表示为1010 解释&#xff1a; 0 0000 1 0001 -1 1111&#xff08;由 …

49、Floyd求最短路

Floyd求最短路 题目描述 给定一个n个点m条边的有向图&#xff0c;图中可能存在重边和自环&#xff0c;边权可能为负数。 再给定k个询问&#xff0c;每个询问包含两个整数x和y&#xff0c;表示查询从点x到点y的最短距离&#xff0c;如果路径不存在&#xff0c;则输出“imposs…

RestTemplate中multipart form data传多个参数的处理办法

应用场景 前端请求后端上传单个或多个文件&#xff0c;同时携带其他参数&#xff0c;后端再转发到第三方服务。 思路 拿到前端提交的multipart参数读取参数并区分文件/其他参数请求第三方 实现 拿到前端提交的参数并解析到MultiValueMap&#xff1a; private static Mult…

【Ubuntu】100 系统字体安装和更改

系统&#xff1a;Ubuntu18.04LTS 1 Why we need&#xff1f; 写这篇经验贴的原因&#xff1a; ①我需要装一下中文字体&#xff08;Qt要用&#xff09;&#xff1b; ②想调一下字体大小和默认中文字体的样式 2 装第三方字体 Step1&#xff1a;安装软件Font Manager sudo ap…

【记录】打印|用浏览器生成证件照打印PDF,打印在任意尺寸的纸上(简单无损!)

以前我打印证件照的时候&#xff0c;我总是在网上找在线证件照转换或者别的什么。但是我今天突然就琢磨了一下&#xff0c;用 PDF 打印应该也可以直接打印出来&#xff0c;然后就琢磨出来了&#xff0c;这么一条路大家可以参考一下。我觉得比在线转换成一张 a4 纸要方便的多&am…

Echarts 让柱状图在图表中展示,离开X轴

文章目录 需求分析需求 分析 话不多说,直接源码展示 option = {title: {text: Waterfall Chart,subtext: Li

落地台灯有什么作用?五款口碑好的落地台灯推荐

落地台灯有什么作用&#xff1f;面对长时间工作、学习已成为当代年轻人的真实写照&#xff0c;据目前不完全统计&#xff0c;60%以上的人群每天用眼时间都已经超过10小时&#xff0c;高强度的的用眼以及不可确定的环境因素都易导致双眼出现干涉、酸痛、红血丝等情况&#xff0c…

请简述Vue更新数组时触发视图更新的方法?

在Vue中&#xff0c;当你直接修改数组&#xff08;如使用索引直接设置一个项或者使用length属性修改数组长度&#xff09;时&#xff0c;Vue不能检测到这些变化&#xff0c;因此不会触发视图的更新。为了解决这个问题&#xff0c;Vue提供了一些方法来修改数组以触发视图的更新。…

[有监督学习]6.详细图解朴素贝叶斯

朴素贝叶斯 朴素贝叶斯&#xff08;Naive Bayes&#xff09;是常用于自然语言分类问题的算法。它在垃圾邮件过滤上的应用非常有名。 概述 朴素贝叶斯是一个基于概率进行预测的算法&#xff0c;在实践中被用于分类问题。具体来说&#xff0c;就是计算数据为某个标签的概率&…

从零开始利用MATLAB进行FPGA设计(七)用ADC采集信号教程2

黑金的教程做的实在太拉闸了&#xff0c;于是自己摸索信号采集模块的使用方法。 ADC模块&#xff1a;AN9238 FPGA开发板&#xff1a;AX7020&#xff1b;Xilinx 公司的 Zynq7000 系列的芯片XC7Z020-2CLG400I&#xff0c;400引脚 FBGA 封装。 往期回顾&#xff1a; 从零开始利…

STM32学习问题总结(2)—CubeMX生成项目后串口没效果和Microlib

检查完所有的硬件和软件部分&#xff0c;最后发现&#xff0c;又是Keil的设置问题&#xff0c;啊啊啊啊 打开Keil的魔术棒&#xff0c;勾选Target的Use Microlib选项即可&#xff0c;但这并不是最佳方案 最终解决方案&#xff1a; 参考&#xff1a;http://t.csdnimg.cn/2Tjfc…