数据分析
琅晓琳
计算机软件编程,主要编程语言有C++,python和java,之前从事深度学习研究,有caffe开发基础,目前从事数据库的开发和维护。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据分析系列 之python的is和==,java的==和equal(相等判断)
Java,Python中的相等性介绍。转载 2023-02-14 12:32:22 · 761 阅读 · 0 评论 -
数据分析系列 之3σ规则/依据拉依达准则来剔除异常值
3σ原则为数值分布在(μ-σ,μ+σ)中的概率为0.6827数值分布在(μ-2σ,μ+2σ)中的概率为0.9545数值分布在(μ-3σ,μ+3σ)中的概率为0.9973可以认为,Y 的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%....转载 2022-07-04 16:17:41 · 2012 阅读 · 0 评论 -
数据分析系列 之根据经纬度计算两点之间的距离
1 基础知识:地球半径:由于地球不是一个完美的球体,所以并不能用一个特别准确的值来表示地球的实际半径,不过由于地球的形状很接近球体,用[6357km] 到 [6378km]的范围值可以涵盖需要的所有半径。2 Java实现代码:public final class DistanceUtils { /** * 地球半径,单位 km */ private static final double EARTH_RADIUS = 6378.137; /**转载 2022-05-07 20:49:44 · 354 阅读 · 0 评论 -
数据分析系列 之python中的日期格式应用
1 datetime模块中的数据类型在python的标准库中包含日期(date)和时间(time)数据的数据类型,datetime、time以及calendar模块会被经常用到。datetime以毫秒形式存储日期和时间,datetime.timedelta表示两个datetime对象之间的时间差。给datetime对象加上或减去一个或多个timedelta,会产生一个新的对象。(1)strftime():由日期格式转化为字符串格式的函数;(2)strptime():由字符串格式转化为日期格式的函数。原创 2022-03-14 20:00:55 · 4098 阅读 · 0 评论 -
数据分析系列 之python中面向对象与GUI的设计
1 面向对象的思想介绍1.1 这部分可以类比于C++和java中类和对象的知识来进行学习;1.2 类—描述对象的特征;对象—由数据和方法组成;1.3 抽象的介绍:类是对象的抽象,类的具体化是对象(模板),对象相当于类的具体实现;python中_init_()方法介绍:(a) 它是对象的初始化方法,当类被调用后,python将创建实例对象;(b) 创建完对象后,python自动调用的第一个方法;© 实例对象作为方法的第一个参数self被传递进去,调用类创建实例对象时的参数都传给_init_()原创 2021-05-16 11:24:55 · 517 阅读 · 0 评论 -
数据分析系列 之python中随机森林算法的应用
1 原理1.1 随机森林算法:随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树,每棵决策树都是一个分类器(假设现在针对的是分类问题),那么对于一个输入样本,N棵树会有N个分类结果。而随机森林集成了所有的分类投票结果,将投票次数最多的类别指定为最终的输出,这就是一种最简单的 Bagging 思想。1.2 Matplotlib和SeabornMatplotlib:高度定制化绘图,需要设置更多的参数;Seaborn:定制化能力会比较差,代码更简洁。1.3 网格搜索GridSea原创 2021-05-15 17:00:46 · 1201 阅读 · 0 评论 -
数据分析系列 之pandas用例分析2
1 前言本专题参考学习视频和网上其他大神的资料,推出pandas用例分析2,需要分析的主题是男女生电影评分差异分析。2 原理2.1 python pandas 中 loc & iloc 用法区别loc:基于行标签和列标签(x_label、y_label)进行索引,先行后列,中间用逗号分隔,例如取row1和col1的数据:frame.loc['row1','col1']取row1和row2的数据:frame.loc['row1':'row2',:]取col1和col2的数据:fr原创 2021-05-15 16:02:18 · 241 阅读 · 1 评论 -
数据分析系列 之python语言中的聚类分析
1 基础算法(1) K-means算法:对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一起,而让簇间的距离尽量的大。(2) K-means算法是局部最优解,初始聚类中心一般是随机选择,有可能运行两次的结果稍有不同。(3) 距离公式常采用欧式距离和余弦相似度公式,前者越小代表距离越小,后者越大代表越相似。2 算法实现import numpy as npfrom scipy.cluster.vq import * vq,kmeans,whitenlistA原创 2021-05-09 21:35:35 · 732 阅读 · 0 评论 -
数据分析系列 之python中数据统计与分析
1 概述数据探索:检查数据错误,了解数据特征和分布规律数据特征分析:分布分析、统计量分析、相关分析2 分布分析2.1 定量分析:数量分布可利用直方图from sklearn import datasetsimport pandas as pdimport matplotlib.pyplot as pltimport scipyiris=datasets.load_iris()iris_df=pd.DataFrame(iris.data)iris_df.columns=iris.fe原创 2021-05-04 16:34:09 · 988 阅读 · 3 评论 -
数据分析系列 之python中数据探索与预处理
1 概述1.1 数据探索检查数据错误,了解数据分布特征和内在规律1.2 数据预处理数据清洗 Data cleaning数据集成 Data integration数据变换 Data transformation数据规约 Data reduction2 数据清洗2.1 缺失值处理删除填充:固定值、均值、中位数、上下数据、插值函数、最可能的值(回归分析填充)举例:DataFrame缺失值处理x = pd.read_csv('A.csv',index_col='Date')#检测空值x原创 2021-05-04 12:29:49 · 851 阅读 · 3 评论 -
数据分析系列 之python中数据的可视化
1 介绍Matplotlib绘图:python绘图库,主要用于二维绘图,利用绘图API–pyplot模块。pandas绘图:可以实现基于Series和DataFrame的某些绘图功能。可以直接将DataFrame的index作为x轴数据,各组values作为y轴数据。2 折线图import matplotlib.pyplot as plt#代表y轴的数据plt.plot([1,2,4,5,6,3])#默认的x轴数据plt.plot(range(6),[1,2,4,5,6,3])#绿色虚线原创 2021-05-03 17:42:27 · 421 阅读 · 1 评论 -
数据分析系列 之python中便捷数据的获取(数据获取补充)
1 怎样读取/写入csv文件数据?import pandas as pd#读取df = pd.read_csv('c/test/test.csv')#帮助信息help(pd.read_csv)#写入df.to_csv('...')#excel同理#读取df = pd.read_excel('c/test/test.xlsx', sheet_name = 'scores')#计算df['sum'] = df['Python'] + df['Math']#写入df.to_excel原创 2021-05-03 16:53:52 · 193 阅读 · 1 评论 -
数据分析系列 之python中拓展库SciPy的使用
1 概述:SciPy中的数据结构:ndarray(N维数组)Series(变长字典)DataFrame(数据框)常用的库:NumPy:强大的ndarray对象和ufunc函数,比较适合线性代数和随机数处理等科学计算,具有有效的通用多维数据,可定义任意数据类型,无缝对接数据库。Matplotlib:基于NumPy,是一个二维绘图库,可快速生成曲线图、直方图、散点图等形式的图。pandas:基于SciPy和NumPy,具有高效的Series和DataFrame数据结构,具备高效的处理大数据集的切原创 2021-05-03 15:27:22 · 401 阅读 · 2 评论 -
数据分析系列 之python中集合内容介绍
1 概述:集合:一个无序不重复的组合,包括可变集合(set)和不可变集合(frozenset);集合中包含常见的集合运算,可以使用运算符,也可以使用函数的形式。2 举例:aSet = set('ABC')bSet = set('DEF')'D' in aSetFalseaSet == bSetFalse#注意:这里的< > <= >=含义是:是否为包含关系,不是字符串中的ASCII码大小比较aSet < bSetFalseaSet = set('AB原创 2021-05-03 11:31:20 · 374 阅读 · 0 评论 -
数据分析系列 之python中字典内容补充
1 生成字典的两种方式:问题:已知pList=[(‘ABC’,‘DEF’,‘123’),(‘HIJ’,‘KWL’,‘456’)],将元素的第一个和第三个位置内容构成字典的map对。#方法1:pList=[('ABC','DEF','123'),('HIJ','KWL','456')]aList = []bList = []for i in range(5): aStr = pList[i][0] bStr = pList[i][2] aList.append(aStr) bList.ap原创 2021-05-03 10:48:11 · 278 阅读 · 0 评论 -
数据分析系列 之python中的浅拷贝和深拷贝
1 理解:浅拷贝只复制了父对象,而不复制内部子对象,浅拷贝让一级元素有了自己独立的内存空间,而二级元素仍然指向了被拷贝对象的二级元素的内存区域。如果既复制父对象,也复制内部子对象?利用深拷贝copy.deepcopy()来做。2 举例:x = [1,2,3]#直接赋值的方式,x和y共用同一块内存区域,所以修改y的值x也会改变y = xy[0] = 4输入:x输出:[4,2,3]#把x的浅拷贝赋值给zz = x[:]z[0] = 9输入:x#x值并没有改变输出:[4,2,3]原创 2021-05-03 10:08:29 · 169 阅读 · 0 评论 -
数据分析系列 之python中输入输出和函数编程
1 输入输出:1.1 概述输入函数input x=input([‘输入信息’]) 返回值为str输出语句print(对象1,…对象n,seq=’ ‘,end=’\n’)1.2 举例如何输入获得两个字符串?(若输入abc def或者abc,def)x,y = input('Input:').split()#换行符读不到x,y = input('Input:').split(' ')#逗号分隔x,y = input('Input:').split(',')如何输入获得两个整数?x原创 2021-05-02 18:19:36 · 575 阅读 · 0 评论 -
数据分析系列 之python中数据获取与表示
1 本地数据获取1.1 文件的打开:语法file_obj = open(filename,mode=‘r’,buffering=-1)举例f1 = open(‘c:\ABC.txt’)f2 = open(‘c:\ABC.txt’,‘w’)f3 = open(‘c:\ABC.txt’,‘wb’,0)mode为可选参数,默认值为r;buffering也为可选参数,默认值为-1(0代表不缓冲,1或者大于1的值表示缓冲一行或者指定缓冲区大小),二进制文件可以不使用缓冲,但是文本文件必须使用缓冲。原创 2021-04-25 20:57:26 · 303 阅读 · 0 评论 -
数据分析系列 之python中range函数的使用
此部分作为前面循环博客的内容补充1 语法:range(start,end,step=1)range(start,end)range(end)其中:start 起始值(包含)end 终值(不包含)step 步长(不能为0)range(start,end,step=1) 不包含end的值range(start,end) 缺省step值为1range(end) 缺省start值为0,step值为12 举例:list(range(3,11,2))[3,5,7,9]list(range(原创 2021-04-24 17:07:44 · 723 阅读 · 0 评论 -
数据分析系列 之python中字典内容介绍
1 介绍字典是另一种可变容器模型,且可存储任意类型对象;字典的每个键值对用冒号分割,每个键值对之间用逗号分割,用花括号 { }表示,字典数据的存储是无序的,可以通过访问key来得到value;key一般是唯一的,value不需要唯一;value可以取任何数据类型,但key必须是不可变的,如字符串,数字或元组,这里列表不可以做key;类似于java语言中的map类型。2 创建字典和访问字典里的值dict = {'Name': 'ABC', 'Age': 20, 'Class': 'DEF'}p原创 2021-04-18 18:07:41 · 438 阅读 · 2 评论 -
数据分析系列 之python中元组内容介绍
1 介绍Python的元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号。基于此,Tuple 没有的方法有:(1) 不能向 tuple 增加元素,没有 append 、 extend 、insert 等方法;(2)不能从 tuple 删除元素,没有 remove 或 pop 方法;(3)不能在 tuple 中查找元素,没有 index 方法(index是查找而不是索引,索引直接用下标即可,如:t[0])。使用 tuple 的好处:(1) Tuple 比 list 操作原创 2021-04-18 17:41:09 · 214 阅读 · 0 评论 -
数据分析系列 之python中列表内容介绍
1 引言实际上来说,Python中没有数组的数据结构,但列表很像数组,另外在使用的时候Python的类数组应用可以分三种类型:(1) list 普通的链表,初始化后可以通过特定方法动态增加元素。定义方式:arr = [元素](2) Tuple 固定的数组,一旦定义后,其元素个数不能再改变。定义方式:arr = (元素)(3) Dictionary 词典类型, 即是Hash数组。定义方式:arr = {元素k:v}本篇小博客介绍列表的使用。2 创建数组(列表)只要把逗号分隔的不同的数据项使原创 2021-04-18 16:55:27 · 233 阅读 · 1 评论 -
数据分析系列 之python中字符串内容介绍
1 python中单引号、双引号、三引号的用法总结可以通过单引号或双引号创建字符串。例如:a=‘abc’; b=“123”使用两种引号的好处是可以创建本身就包含引号的字符串,而不需要使用转义字符。主要使用场景是:*本质上单引号和双引号都可以表示一个字符串,在使用时具体使用哪种符号取决于原字符串中包含哪种引号,这样用另外一种引号可以避免使用转义字符。*例如:a = "ABC"print(a)输出:ABCb = 'ABC"123"'print(b)输出:ABC"123"#字符串中本来含有单原创 2021-04-18 11:32:22 · 396 阅读 · 1 评论 -
数据分析系列 之python中遍历列表的几种方法
1 引入:接触过C++、java和python,目前经常使用的是java,C++和python也忘的差不多啦哈哈…但是呢python现在经常使用,写脚本做数据处理等如果现查资料,感觉也挺不方便的。干脆就几个常用的用途复习一下吧…2 正式开始:先从遍历复习吧,写惯了强语言的循环,现在看python的都有点看不懂了。方法1:使用for循环简单结构遍历如:examples = ["AAA","BBB","CCC","DDD"]for example in examples: print(examp原创 2021-04-14 14:01:54 · 4534 阅读 · 0 评论 -
数据分析系列 之FP-growth算法介绍
1 基本概念:FP-growth,即 Frequent Pattern Growth,它通过构建 FP 树(即 Frequent Pattern Tree)这样的数据结构,巧妙得将数据存储在 FP 树中,只需要在构建 FP 树时扫描数据库两次,后续处理就不需要再访问数据库了。这种特性使得 FP-growth 算法比 Apriori 算法速度快。FP 树是一种前缀树,由频繁项的前缀构成。2 两个名词:支持度 Support支持度 指某频繁项集在整个数据集中的比例。假设数据集有 10 条记录,包含{‘鸡转载 2021-04-07 15:49:13 · 1891 阅读 · 0 评论 -
数据分析系列 之pandas用例分析1
1 pandas介绍:pandas是基于NumPy的一种工具,它是python的一个数据分析包,最初由AQR Capital Management于2008年4月开发,并于2009年底开源出来,目前由专注于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。常用数据结构有:Series:一维数组,与Numpy中的一维array类似。二者与Python基本的数据结构List也很相近;DataFrame:二维的表格型数据结构。很多功能与R中的data.frame类原创 2021-04-07 15:05:38 · 260 阅读 · 0 评论
分享