- 博客(30)
- 收藏
- 关注
原创 pandas中对数值分组计算频率的方法
bins: 当你处理的是数值数据时,你可以使用 bins 参数来指定分组的边界。这允许你将连续的数值数据划分为离散的区间,并计算每个区间的计数。normalize: 如果设置为 True,则返回每个值出现的频率(即每个值出现的次数除以总数),而不是计数。bins: 区间的边界。可以是一个整数(表示等宽的区间数量),一个序列(表示区间边界),或者是一个 IntervalIndex。如果没有提供,则默认使用区间的左边界和右边界的字符串表示。默认为 True,但你也可以设置为 False 以保持原始顺序。
2024-04-28 15:38:03
550
1
原创 DataFame的构造方法
(四)使用字典嵌套列表构建DataFrame。(五)使用列表嵌套字段构建DataFrame。(一)使用列表构建DataFrame。(三)使用字典构建DataFrame。(二)使用嵌套列表创建。
2024-03-02 17:07:01
458
原创 在python中连接各类型数据库的方法
其中read_ip的格式为username/password@ip:端口号/服务名,比如read_ip=“myuser/mypassword@localhost:1521/myserver”1、连接oracle数据库,将数据导入pandas的DataFrame。2、连接hive数据库,将数据导入pandas的DataFrame。3、连接mongo数据库,将数据导入。
2024-01-12 11:29:34
465
1
原创 oracle中pivot用法
PIVOT函数用于将一个表中的行转换为列。它可用于将一个具有多个相同值的列转换为多个列,每个列包含该值的一个实例。aggregation_function 是要对数据进行聚合的函数,例如SUM、AVG、COUNT等。value1, value2, …column2 是要转换为列的列名。column1 是打算聚合展示的列。
2023-09-20 13:38:34
2174
原创 利用钉钉机器人,实现python向钉钉发送消息
参考钉钉的开发文档 https://open.dingtalk.com/document/robots/customize-robot-security-settings。加签方式需要把timestamp+“\n”+密钥当做签名字符串,使用HmacSHA256算法计算签名,然后进行Base64 encode,最后再把签名参数再进行urlEncode,得到最终的签名(需要使用UTF-8字符集)。最终拼接到调用的url中:https://oapi.dingtalk.com/robot/send?
2023-09-07 10:55:49
1486
原创 窗口函数详解(三)——lead和lag函数
Lag和Lead分析函数可以在一次查询中取出当前行后N行和前N行的数据,虽然可以不用排序,但是往往只有在排序的场景下取前面或者后面N 行数据才有意义。lag函数和lead函数是窗口函数中常用的函数之一,用于在查询结果中获取指定列的前一行或后一行的值。partition_column: 指定分区列,用于将查询结果划分为多个分区,以便在每个分区内分别计算lag函数。lead函数用于获取当前行指定列的后n行的值。lag函数用于获取当前行指定列的前n行的值。offset: 指定前面的行数,如果不指定,默认为1。
2023-09-05 17:28:06
4088
原创 python中日期处理问题总结
df[‘createtime’]=pd.to_datetime(df[‘createtime’])df[‘createtime’] = np.array(df[‘createtime’], dtype=‘datetime64’)
2023-06-13 14:37:37
1977
原创 python处理json相关方法
如果设置为 False,则 json.dump() 会抛出 ValueError 异常,如果遇到 NaN、Infinity 或 -Infinity,否则可以输出这些特殊的浮点数值。:如果设置为 True,则所有非 ASCII 字符都会被转义为 Unicode 转义序列,否则输出原字符。:如果设置为 True,则跳过字典中的非字符串键值对,否则会抛出 TypeError 异常。:如果设置为 True,则按照键的排序顺序输出 JSON 字符串。:如果设置为 True,则检查对象中是否有循环引用,否则不检查。
2023-05-05 15:40:53
493
原创 pandas的几个DataFrame函数
Pandas dataframe.ne()函数检查一个数据框架元素与一个常数、系列或其他数据框架元素的不平等。如果比较中的两个值不相等,则返回true,如果相等则返回false。参考链接:https://geek-docs.com/pandas/pandas-dataframe/python-pandas-dataframe-ne.html。level :跨层广播,与通过的MultiIndex层的索引值相匹配。axis:对于系列输入,axis要与系列的索引相匹配。other:系列,数据框架,或常数。
2023-04-28 11:22:33
285
原创 oracle转义字符用法详解
如下数据存在诸多特殊字符,需使用模糊匹配进行查找With Test1 As(Select ‘嫦娥5%号’ As Nam From Dual Union AllSelect ‘嫦娥_5号’ As Nam From Dual Union AllSelect ‘嫦娥/号’ As Nam From Dual Union AllSelect ‘嫦娥5号 ’ As Nam From Dual Union AllSelect ‘嫦娥5’‘号’ As Nam From Dual Union AllSelect
2021-07-21 13:10:52
2871
原创 pandas read_csv 读取数据中包含双引号
如果csv中的数据包含双引号,需使用如下方法读取如:"_id",“datetime”,“name”,“documentno”,“phone”,“style”,“data”aap=pd.read_csv(r'E:/测试数据,可删/py_queryphone1.csv',engine='python',skipinitialspace=True,escapechar='\\',quotechar='"',encoding='utf-8',dtype={'phone':np.object})...
2021-03-17 16:19:19
1189
原创 窗口函数详解
窗口函数可以进行排序、生成序列号等一般聚合函数无法实现的高级操作。其语法通常为<窗口函数> over (partition by <列> order by <列> )partiton by 分组order by 排序窗口函数大致分为两类(1)能够作为窗口函数的聚合函数(sum、avg、count、max、min)(2)专用窗口函数2.1 rank函数...
2021-03-01 14:33:47
2694
原创 grouping运算符
使用group by子句和聚合函数无法得出合计值,引入grouping运算符即可解决。参考https://www.jb51.net/article/91232.htm,数据源同参考https://www.iteye.com/blog/xls-1096711,解释更齐全grouping运算符分为如下三种:(1)rollup对单一列进行聚合计算select area,sum(personincome)from earnings group by rollup(area)对多列进行聚合计算s
2021-02-24 17:34:33
417
原创 pandas中每个元素减去所在行的平均值
如下数据为销售人员一季度销售业绩,求出每位销售人员每月与平均销售业绩的差data=[[580,524,457,475,384,568,654,683,882,528], [1043,326,1056,543,797,1085,637,975,268,525], [880,963,908,528,366,671,327,316,213,653]]df = pd.DataFrame(columns=['禹迎南','崇清芬','于安宜','柳旷','革忻欢','区暮','焦元绿',
2021-02-20 16:53:09
3293
原创 python中float浮点型字段计算的精度问题
概要:浮点数在计算机中以二进制保存的,将会导致计算不精准在python中运行如下代码,结果如下a=1.1b=2.2a+b为解决此问题,需引入 decimal 模块。from decimal import Decimala=Decimal('1.1')b=Decimal('2.2')a+bps:必须为’1.1’,单引号不可省设置精度from decimal import *getcontext().prec = 6Decimal(1)/Decimal(7)...
2021-02-08 13:46:03
473
原创 pandas学习笔记(四):数据操作
测试数据如下:import numpy as npdata = {'animal': ['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat', 'dog', 'dog'], 'age': [2.5, 3, 0.5, np.nan, 5, 2, 4.5, np.nan, 7, 3], 'visits': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1], 'priority': [
2020-11-29 20:13:48
459
原创 pandas学习笔记(三):行列选择以及数据插入删除
(一)iloc[ , ] 方法使用情况:适用于行列号逗号前为行的选择,逗号后为列的选择,0:2表示第一行(列)到第三行(列),[0,2]表示第一行(列)和第三行(列)(1)如只选择列,逗号前为冒号(表示全选行)#第一列到第三列df.iloc[ :, 0:2] #第一列和第三列df.iloc[:,[0,2]](2)如只选择行,逗号可省略#第一行到第三行df.iloc[ :, 0:2] #第一行和第三行df.iloc[:,[0,2]](3)如行列同时选择#第一列到第三列,第一行到
2020-11-28 18:28:10
1238
原创 python之列表推导式
列表推导式允许过滤一个容器的元素,用一种简明的表达式转换传递给过滤器的元素,从而生成一个新的列表。其基本形式为:newlist = [Expression for var in list if condition]参数:newlist:生成新列表的名称Expression:用于计算新列表的表达式var:变量,值为后面列表的每个元素list:指的是生成新列表的原列表condition:条件表达式,用用于指定筛选条件示例:从如下列表中选出年龄大于30岁的值,常用写法如下age = [8.
2020-11-03 14:51:22
205
原创 pandas学习笔记(二):打开文件
pandas学习笔记(二):打开文件导入excelimport pandas as pddf=pd.read_excel(r'C:\Users\Desktop\测试.xlsx',sheetname='sh1',index_col=0,header=0,usecols=[0,2])`sheet:指定sheet,默认第一个。格式①sheet_name=‘xxx’格式②sheet_name=0Index_col:指定行索引 ,默认从0开始header:指定列索引,默认从0开始,可设置header
2020-06-30 13:11:43
388
1
原创 pandas学习笔记(一):数据结构
Series数据结构1、概念:Series是一种类似于一维数组的对象,由一组数据及一组与之相关的数据标签即索引组成2、结构:行索引+数值3、方法:①创建:pd.Series()eg:传入列表,index指定索引s1=pd.Series(['a','b','c','d'],index=[1,2,3,4])传入字典,key是数据标签,value是数据值s1=pd.Series({1:'a',2:'b',3:'c',4:'d'})②获取索引:index方法s1.index③获取值:val
2020-06-24 15:41:06
265
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人