![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pandas
炼丹师666
要学神仙,驾鹤飞天,点石成金,妙不可言!
展开
-
pandas_分组聚合_groupby和agg的区别
pandas_分组聚合_groupby和agg的区别对特定字段进行聚合操作对多个字段进行分组对多个字段进行分组,多个字段进行聚合运算import pandasdata = pandas.read_csv('C:/data/data/data.csv', engine='python', encoding='utf8')data.head()id reg_date id_num...原创 2020-03-27 16:33:58 · 1426 阅读 · 0 评论 -
series数据转化为dataframe数据
series数据转化为dataframe数据import pandas as pdimport matplotlib.pyplot as plt#筛选理财客户cust_isn_list = data.loc[(data.purchase_date.dt.month == data.last_etl_acg_dt.dt.month+1)&(data.financial_balanc...原创 2020-06-25 17:54:46 · 4238 阅读 · 0 评论 -
map(), apply()和applymap()的区别与应用
总结:1.apply()是一种让函数作用于DataFrame中行或列的操作。2.applymap()是一种让函数作用于DataFrame每一个元素的操作。3.map()是一种让函数作用于Series每一个元素的操作。apply()、map()和applymap()的区别就在于应用场景的不同https://blog.csdn.net/GR346305172/article/details/...原创 2020-01-16 22:07:52 · 1301 阅读 · 0 评论 -
python _滑动时间窗
python _滑动时间窗一种用于时间序列操作的重要用法,是使用滑窗(sliding windown)或呈指数降低的权重(exponentially decaying weights),来对时间序列进行统计值计算和其他一些函数计算。 这个对于消除噪声或有缺陷的数据是很有用的做平滑处理,削弱短期波动影响# 滑动时间窗import pandas as pd# 模拟数据time_inde...原创 2019-12-30 22:02:25 · 4971 阅读 · 0 评论 -
Python_让特征值滞后一行
Python_让特征值滞后一行# 加载库import pandas as pd# 데이터프레임을 만듭니다.dataframe = pd.DataFrame()# 模拟数据dataframe["dates"] = pd.date_range("1/1/2001", periods=5, freq="D")dataframe["stock_price"] = [1.1,2.2,...原创 2019-12-30 21:43:33 · 2600 阅读 · 0 评论 -
python_计算两个日期之间的时间差
python_计算两个日期之间的时间差# 计算两个日期之间的时间差import pandas as pd# dataframe = pd.DataFrame()# 创建两个 datetime 特征dataframe['Arrived'] = [pd.Timestamp('01-01-2017'), pd.Timestamp('01-04-2017')]dataframe['L...原创 2019-12-29 22:06:16 · 2413 阅读 · 0 评论 -
python_筛选日期_date_range
python_筛选日期生成日期 date_range7.3 # 라이브러리를 임포트합니다.import pandas as pd# 데이터프레임을 만듭니다.dataframe = pd.DataFrame()# 创建datetimedataframe['date'] = pd.date_range('1/1/2001', periods=100000, freq='H'...原创 2019-12-29 17:32:23 · 4974 阅读 · 1 评论 -
python_把字符串转化为日期
python_把字符串转化为日期import numpy as npimport pandas as pd# 创建字符串date_strings = np.array([ '03-04-2005 11:35 PM', '23-05-2010 12:01 AM', '04-09-2009 09:09 PM'])# 转换为datatime类型的数据# conver...原创 2019-12-29 17:15:25 · 1583 阅读 · 0 评论 -
python_重新拼接字段名
python_重新拼接字段名#重新拼接字段名temp.columns = ['crm_sum_'+x if x not in ['cust_isn','last_etl_acg_dt'] else x for x in temp.columns]原创 2019-12-16 15:07:19 · 240 阅读 · 0 评论 -
pandas_表特征查看
#查看数据集字段类型,表结构dfoff.info()#查看行数,列数dfoff.shapedf_train_stma.head()df_apma.dtypestemp.shape#筛选空值 null值feature3 = off_train[pd.isnull(off_train['Date'])]feature3 = off_train[pd.isnull(off_train....原创 2019-12-16 14:13:36 · 1029 阅读 · 0 评论 -
python_链式编程技术_管道技术
python_链式编程技术_管道技术Techniques for Method Chaining# 12.3 链式编程技术# 当对数据集进⾏⼀系列变换时,你可能发现创建的多个临时变量# 其实并没有在分析中⽤到。看下⾯的例⼦:df = load_data()df2 = df[df['col2'] < 0]df2['col1_demeaned'] = df2['col1'] - d...原创 2019-12-09 14:53:45 · 584 阅读 · 0 评论 -
python_GroupBy高级应用_transform
python_GroupBy高级应用_transform分组转换和“解封”GroupBy分组的时间重采样Advanced GroupBy Use¶Group Transforms and "Unwrapped" GroupBys# 12.2 GroupBy⾼级应⽤# 尽管我们在第10章已经深度学习了Series和DataFrame的# # Groupby⽅法,还有⼀些⽅法也是很有⽤的...原创 2019-12-06 16:53:39 · 2061 阅读 · 0 评论 -
python_分类_category方法
python_分类_category方法from_codes构造器Advanced pandasimport numpy as npimport pandas as pdnp.random.seed(12345)import matplotlib.pyplot as pltplt.rc('figure', figsize=(10, 6))PREVIOUS_MAX_ROWS = pd...原创 2019-12-06 14:17:56 · 6287 阅读 · 0 评论 -
python_map()_reduce()_filter()的区别
python_map()_reduce()_filter()的区别使用lamda操作参考:https://blog.csdn.net/mango9126/article/details/70100088原创 2019-12-05 15:01:34 · 106 阅读 · 0 评论 -
python_移动窗口函数
python_移动窗口函数Moving Window Functions# 11.7 移动窗⼝函数# 在移动窗⼝(可以带有指数衰减权数)上计算的各种统计函数也# 是⼀类常⻅于时间序列的数组变换。这样可以圆滑噪⾳数据或断# 裂数据。我将它们称为移动窗⼝函数(moving window# function),其中还包括那些窗⼝不定⻓的函数(如指数加权移# 动平均)。跟其他统计函数⼀样,移...原创 2019-12-03 14:03:39 · 2294 阅读 · 1 评论 -
python_时间序列_重采样及频率转换
python_时间序列_重采样及频率转换Resampling and Frequency Conversion¶# 11.6 重采样及频率转换# 重采样(resampling)指的是将时间序列从⼀个频率转换到另⼀# 个频率的处理过程。将⾼频率数据聚合到低频率称为降采样# (downsampling),⽽将低频率数据转换到⾼频率则称为升采# 样(upsampling)。并不是所有的重采样...原创 2019-12-02 14:04:11 · 2503 阅读 · 0 评论 -
python_时间序列_时期及算数运算
python_时间序列_时期及算数运算Periods and Period Arithmetic# 11.5 时期及其算术运算# 时期(period)表示的是时间区间,⽐如数⽇、数⽉、数季、数# 年等。Period类所表示的就是这种数据类型,其构造函数需要⽤# 到⼀个字符串或整数,以及表11-4中的频率:p = pd.Period(2007, freq='A-DEC')pPerio...原创 2019-12-01 20:14:31 · 755 阅读 · 0 评论 -
python_时间序列_时区处理
python_时间序列_时区处理Time Zone Handling¶11.4 时区处理# 时间序列处理⼯作中最让⼈不爽的就是对时区的处理。许多⼈都# 选择以协调世界时(UTC,它是格林尼治标准时间(Greenwich# Mean Time)的接替者,⽬前已经是国际标准了)来处理时间序# 列。时区是以UTC偏移量的形式表示的。例如,夏令时期间,纽# 约⽐UTC慢4⼩时,⽽在全年其他时...原创 2019-12-01 20:04:11 · 236 阅读 · 0 评论 -
python_时间序列
python_时间序列Time Series##### 第11章 时间序列# 时间序列(time series)数据是⼀种重要的结构化数据形式,应# ⽤于多个领域,包括⾦融学、经济学、⽣态学、神经科学、物理# 学等。在多个时间点观察或测量到的任何事物都可以形成⼀段时# 间序列。很多时间序列是固定频率的,也就是说,数据点是根据# 某种规律定期出现的(⽐如每15秒、每5分钟、每⽉出现⼀...原创 2019-12-01 15:47:41 · 256 阅读 · 0 评论 -
python_透视表和交叉表
Pivot Tables and Cross-Tabulation# Python和pandas中,可以通过本章所介绍的groupby功能以及# (能够利⽤层次化索引的)重塑运算制作透视表。 DataFrame有# ⼀个pivot_table⽅法,此外还有⼀个顶级的pandas.pivot_table函# 数。除能为groupby提供便利之外, pivot_table还可以添加分项# ...原创 2019-11-28 21:05:56 · 410 阅读 · 0 评论 -
python_排序
python_排序Reordering and Sorting Levels重排与分级排序# 有时,你需要重新调整某条轴上各级别的顺序,或根据指定级别# 上的值对数据进⾏排序。swaplevel接受两个级别编号或名称,# 并返回⼀个互换了级别的新对象(但数据不会发⽣变化):# 重排与分级排序# 有时,你需要重新调整某条轴上各级别的顺序,或根据指定级别# 上的值对数据进⾏排序。swa...原创 2019-11-27 21:59:51 · 111 阅读 · 0 评论 -
python_透视表操作unstack
python_透视表操作Data Wrangling: Join, Combine,¶# 第8章 数据规整:聚合、合并和重塑# 在许多应⽤中,数据可能分散在许多⽂件或数据库中,存储的形# 式也不利于分析。本章关注可以聚合、合并、重塑数据的⽅法。import numpy as npimport pandas as pdpd.options.display.max_rows = 20n...原创 2019-11-27 21:55:33 · 235 阅读 · 0 评论 -
python排列和随机采样permutation&sample
python排列和随机采样permutation&sample### Permutation and Random Sampling# 排列和随机采样# 利⽤numpy.random.permutation函数可以轻松实现对Series或# DataFrame的列的排列⼯作(permuting,随机重排序)。通过# 需要排列的轴的⻓度调⽤permutation,可产⽣⼀个表示新...原创 2019-11-27 21:38:28 · 1096 阅读 · 0 评论 -
python_范围切分cut
python_范围切分cutDiscretization and Binning¶ages = [20, 22, 25, 27, 21, 23, 37, 31, 61, 45, 41, 32]bins = [18, 25, 35, 60, 100]# 离散化和⾯元划分 范围切分 cats = pd.cut(ages, bins)cats[(18, 25], (18, 25],...原创 2019-11-27 21:34:34 · 2115 阅读 · 0 评论 -
python_rename
python_renameReplacing Values# 替换值# 利⽤fillna⽅法填充缺失数据可以看做值替换的⼀种特殊情况data = pd.Series([1., -999., 2., -999., -1000., 3.])data0 1.01 -999.02 2.03 -999.04 -1000.05 3.0...原创 2019-11-27 21:32:47 · 421 阅读 · 0 评论 -
python_转换为数值类型&map映射&分桶&factorize
python_装换&映射Transforming Data Using a Function or Mapping# 利⽤函数或映射进⾏数据转换# 对于许多数据集,你可能希望根据数组、Series或DataFrame列# 中的值来实现转换⼯作。我们来看看下⾯这组有关⾁类的数据data = pd.DataFrame({'food': ['bacon', 'pulled pork',...原创 2019-11-27 21:26:58 · 622 阅读 · 0 评论 -
Pandas中把dataframe和np.array的相互转换
把数组转换为Datafram: df = pd.Dataframe(array)import pandas as pdimport numpy as npdata = np.random.rand(5, 10) # 5 entities, each contains 10 features# array数据转换为 datafram数据data01=pd.DataFrame(data)...转载 2019-11-27 15:44:15 · 2892 阅读 · 0 评论 -
python_汇总和计算描述统计
python_汇总和计算描述统计Axis Indexes with Duplicate Labels# 带有重复标签的轴索引obj = pd.Series(range(5), index=['a', 'a', 'b', 'b', 'c'])obja 0a 1b 2b 3c 4dtype: int64obj.index.is_uniqueFals...原创 2019-11-26 20:54:06 · 285 阅读 · 0 评论 -
python_排名
python_排名Sorting and Ranking¶import pandas as pdfrom pandas import Series, DataFrameimport numpy as np# 排序和排名# 根据条件对数据集排序(sorting)也是⼀种重要的内置运算。要# 对⾏或列索引进⾏排序(按字典顺序),可使⽤sort_index⽅# 法,它将返回⼀个已排序的新...原创 2019-11-26 20:37:37 · 251 阅读 · 0 评论 -
Python_去重
Python_去重all_user_merchant.drop_duplicates(inplace=True)原创 2019-11-26 15:32:29 · 120 阅读 · 0 评论 -
python_数据筛选查询过滤
python_数据筛选查询#显示使用了优惠券消费的商品,正样本t2 = merchant3[(merchant3.date!=0)&(merchant3.coupon_id!=0)][['merchant_id']]原创 2020-06-25 17:52:13 · 687 阅读 · 0 评论 -
python_折扣优惠数据处理
python_折扣优惠数据处理#提取优惠券的相关特征def calc_discount_rate(s): s = str(s) s = s.split(':') if len(s) == 1: return float(s[0]) else: return 1.0-float(s[1])/float(s[0])def get...原创 2019-11-26 15:06:12 · 2661 阅读 · 0 评论 -
天池大赛o2o优惠券第一名代码解读_xgboost方式
天池大赛o2o优惠券第一名代码解读具体看代码的注释可参考这https://blog.csdn.net/fahail/article/details/75917689代码地址:https://github.com/reader-sword/O2O-Coupon-Usage-Forecast特征构建部分import pandas as pdimport numpy as npfrom ...转载 2019-11-26 11:35:00 · 606 阅读 · 3 评论 -
python_添加标签&打标签
使用函数来打标签#标注标签 Labeldef label(row): if row['Date_received'] == 'null': return -1 if row['Date'] != 'null': td = pd.to_datetime(row['Date'], format='%Y%m%d') - pd.to_datetime(row['...原创 2019-11-19 16:53:58 · 3955 阅读 · 0 评论 -
axis=1和axis=0的区别
axis=1和axis=0的区别一般axis=1,表示逐行读取,符合用户的理解顺序看官方手册:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html?highlight=apply#pandas.DataFrame.applyimport numpy as npimpor...原创 2019-11-19 15:20:24 · 4125 阅读 · 0 评论 -
python 热点编码one_hot实现get_dummies
python 热点编码one_hot实现def getWeekday(row): if row == 'null': return row else: #根据日期获取星期 return date(int(row[0:4]), int(row[4:6]), int(row[6:8])).weekday() + 1dfoff['weekday'] =...原创 2019-11-19 14:51:28 · 233 阅读 · 0 评论 -
python_遍历操作
遍历pandas数据集#查看前三行,第6列的数据dfoff.iloc[:3,6]#遍历类型for i in dfoff.iloc[:3,6]: print(i)原创 2019-11-18 16:58:13 · 287 阅读 · 0 评论 -
python之pandas基本操作
索引数据loc——通过行标签索引行数据iloc——通过行号索引行数据#设置实验数据import pandas as pd data = [[1,2,3],[4,5,6]] index = [0,1] columns=['a','b','c']#加载数据集df = pd.DataFrame(data=data, index=index, columns=columns)#...原创 2019-11-09 22:22:05 · 168 阅读 · 0 评论