python数据分析
NO23412号菜狗
这个作者很懒,什么都没留下…
展开
-
python sklearn中KFold与StratifiedKFold
python sklearn中KFold与StratifiedKFold - 知乎 (zhihu.com)原创 2021-07-15 13:05:11 · 133 阅读 · 0 评论 -
效用最大化准则:离散选择模型的核心(二项Logit模型)——离散选择模型之九
效用最大化准则:离散选择模型的核心(二项Logit模型)——离散选择模型之九 (qq.com)原创 2021-06-24 21:28:07 · 983 阅读 · 0 评论 -
效用最大化准则:离散选择模型的核心(Probit模型上篇)——离散选择模型之七
效用最大化准则:离散选择模型的核心(Probit模型上篇)——离散选择模型之七 (qq.com)原创 2021-06-24 11:31:49 · 886 阅读 · 0 评论 -
正确打开/解读Logit模型系数的方式——离散选择模型之四
正确打开/解读Logit模型系数的方式——离散选择模型之四 - 知乎 (zhihu.com)原创 2021-06-24 10:59:43 · 1401 阅读 · 0 评论 -
Logit究竟是个啥?——离散选择模型之三
Logit究竟是个啥?——离散选择模型之三 - 知乎 (zhihu.com)原创 2021-06-24 10:22:18 · 756 阅读 · 0 评论 -
pyhton loc iloc stack上的一些高级应用
See thedeprecation in the docs.locuses label based indexing to select both rows and columns. The labels being the values of the index or the columns. Slicing with.locincludes the last element.Let's assume we have a DataFrame with the following col...原创 2020-11-11 10:29:56 · 94 阅读 · 0 评论 -
numpy 算数函数
NumPy 算术函数NumPy 算术函数包含简单的加减乘除:add(),subtract(),multiply()和divide()。需要注意的是数组必须具有相同的形状或符合数组广播规则。实例import numpy as np a = np.arange(9, dtype = np.float_).reshape(3,3) print ('第一个数组:') print (a) print ('\n') print ('第二个数组:') b = np.array([10,10,10])...原创 2020-11-05 15:58:28 · 189 阅读 · 0 评论 -
python loc iloc的一些操作复习
1、对单列、多列进行访问读取 -- 对单列数据的访问:DataFrame的单列数据为一个Series。根据DataFrame的定义可以知晓DataFrame是一个带有标签的二维数组,每个标签相当每一列的列名;如:df.a df['a'] -- 对多列数据访问:访问DataFrame多列数据可以将多个列索引名称视为一个列表,df[['a','b']]2、对多行进行访问读取(1)如果只是需要访问DataFrame某几行数据的实现方式则采用数组的选取方式,使用“:”。...原创 2020-11-04 18:00:35 · 2289 阅读 · 0 评论 -
python dataframe 按照 list 排序
import pandas as pds = pd.Series({'a':1,'b':2,'c':3})ss.indexlist_custom_new = ['d', 'c', 'b','a','e']list_custom_newd2=pd.DataFrame(s)d2=d2.reset_index()d2.columns=['t1','t2']d2d2['t1']=d2['t1'].astype('category')d2['t1']d2['t1'].cat.set_c.原创 2020-11-04 12:00:19 · 1209 阅读 · 0 评论 -
python groupby 输出站总体百分比
你将不得不创建第二个groupby对象,但是你可以以一种更简单的方式来计算百分比-仅groupby计算state_office并将该sales列除以其和即可。复制Paul H答案的开头:# From Paul Himport numpy as npimport pandas as pdnp.random.seed(0)df = pd.DataFrame({'state': ['CA', 'WA', 'CO', 'AZ'] * 3, 'office_id':原创 2020-11-02 15:17:02 · 2334 阅读 · 0 评论 -
NumPy 数组属性
本章节我们将来了解 NumPy 数组的一些基本属性。NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推。在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions)。比如说,二维数组相当于是两个一维数组,其中第一个一维数组中每个元素又是一个一维数组。所以一维数组就是 NumPy 中的轴(axis),第一个轴相当于是底层数组,第二个轴是底层数组里的数组。而轴的数量——秩,就是数组的维数。很多时候原创 2020-11-02 12:09:22 · 2156 阅读 · 0 评论 -
python 列表去重的 几种思路
list1 = [2, 1, 3, 4, 1]list2=list(set(list1))list2list3={}.fromkeys(list1).keys()list3list4=[]for t in list1: if t not in list4: list4.append(t)list4list5=[]list6=[1,4,5,6,7,8,9,10][list5.append(i) for i in list1 if not i in list.原创 2020-10-30 19:59:10 · 110 阅读 · 0 评论 -
python date、datetime、string的相互转换
import datetimeimport time#string转datetime>>>str = '2012-11-19'>>>date_time =datetime.datetime.strptime(str,'%Y-%m-%d')>>>date_timedatetime.datetime(2012,11,19,0,0)#datetime转string>>>date_time.strftime('.原创 2020-10-28 10:55:20 · 1269 阅读 · 0 评论 -
python SettingWithCopyWarning 原理及解决办法
Regardless of how long you worked withpandas, be it a day or a year, sooner or later you are likely to run into the infamousSettingWithCopyWarning. In this article, I explain what causes the problem and how to properly address the issue.Warning not an ..原创 2020-10-25 10:33:56 · 1041 阅读 · 0 评论 -
urllib.error.URLError: <urlopen error [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。>
设置谷歌为默认浏览器原创 2020-10-23 11:36:39 · 3381 阅读 · 0 评论 -
NumPy Ndarray 对象
NumPy Ndarray 对象NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。ndarray 对象是用于存放同类型元素的多维数组。ndarray 中的每个元素在内存中都有相同存储大小的区域。ndarray 内部由以下内容组成: 一个指向数据(内存或内存映射文件中的一块数据)的指针。 数据类型或 dtype,描述在数组中的固定大小值的格子。 一个表示数组形状(shape)的元组,表原创 2020-10-21 17:14:26 · 146 阅读 · 0 评论 -
python 字符串与datetime 相互转换
from datetime import datetimestam1=datetime(2008,1,23)str(stam1)stam1.strftime('%Y-%m-%d')stam1.strftime('%w')value = '2017/10/7'datetime.strptime(value,'%Y/%m/%d')原创 2020-10-21 11:56:34 · 204 阅读 · 0 评论 -
显示DataFrame的全部行和列
如果想要指定最大的行数和列数,代码如下: pd.set_option('max_rows', 5) pd.set_option('max_columns', 5) 如果想要直接指定显示所有的行和列,代码如下: pd.options.display.max_columns = None pd.options.display.max_rows = None ...原创 2020-10-20 20:33:37 · 1547 阅读 · 0 评论 -
python groupby 站总体百分比
import pandas as pdimport numpy as npdf = pd.DataFrame({'state': ['CA', 'WA', 'CO', 'AZ'] * 3, 'office_id':list(range(1,7)) * 2, 'sales': [np.random.randint(100000, 999999) for _ in rang.原创 2020-10-20 17:05:27 · 791 阅读 · 0 评论 -
python 最好的 时间处理教程
https://blog.csdn.net/mhywoniu/article/details/78514664原创 2020-10-20 08:00:57 · 81 阅读 · 0 评论 -
python中for _ in range () 中‘_‘的意思
a=0b=1for _ in range(20): (a,b)=(b,a+b) print(a,end=',')其中’_’ 是一个循环标志,也可以用i,j 等其他字母代替,下面的循环中不会用到,起到的是循环此数的作用原创 2020-10-18 08:55:08 · 746 阅读 · 0 评论 -
pandas sort_values
pandas排序的方法有很多,sort_values表示根据某一列排序pd.sort_values("xxx",inplace=True) 表示pd按照xxx这个字段排序,inplace默认为False,如果该值为False,那么原来的pd顺序没变,只是返回的是排序的...原创 2020-10-15 21:38:55 · 174 阅读 · 0 评论 -
pandas 多重索引 multiIndex
import pandas as pddf = pd.DataFrame({'class':['A','A','A','B','B','B','C','C'], 'id':['a','b','c','a','b','c','a','b'], 'value':[1,2,3,4,5,6,7,8]})dfdf=df.set_index(['class','id'])df.loc[('A',slice(None)),:]df.l.原创 2020-10-12 16:43:37 · 158 阅读 · 0 评论 -
python 将excel 数字日期转化为正常
import pandas as pdimport datetimedata_tr=pd.read_excel('D:\\train.xlsx')data_trdata_tr.columnsdata_tr['合同签订时间']def date_tran(dates): delta=datetime.timedelta(days=dates) date_1=datetime.datetime.strptime('1899-12-30','%Y-%m-%d')+delta .原创 2020-10-12 10:49:28 · 1076 阅读 · 0 评论 -
dataframe 不显示科学计数法
pd.set_option('display.float_format', lambda x: '%.2f' % x)原创 2020-10-09 15:41:11 · 3175 阅读 · 0 评论 -
python dataframe 写入 excel
项目中用到把DateFrame写入Excel,其中pandas中的几个参数非常有用。这里以实例说明: import pandas as pd #create some Pandas DateFrame from some data df1=pd.DataFrame({'Data1':[1,2,3,4,5,6,7]}) df2=pd.DataFrame({'Data2':[8,9,10,11,12,13]}) df3=pd.DataFrame(..原创 2020-10-08 14:43:16 · 9077 阅读 · 0 评论 -
python 生成随机数
import numpy as npimport randomnp.random.rand(10)np.random.randn(10)np.random.randint(1,10,size=5)np.random.random_integers(1,10,size=6)t1=np.arange(10)t1np.random.shuffle(t1)t1np.random.permutation(5)#整数random.randint(1,5)random.random()ran.原创 2020-10-08 11:55:17 · 128 阅读 · 0 评论 -
python 结果保留 小数
a = 12.345print('%.2f'%a)round(a,2)from decimal import Decimal# Decimal(a).quantize(Decimal('0.00'))t1=Decimal(a).quantize(Decimal('0.00'))t1a1=pd.DataFrame(index=['a1'],columns=['b1'])a1a1.loc['a1']=t1a1a1=12.45str(a1).split('.')[0]+'.'+str.原创 2020-10-06 13:01:19 · 410 阅读 · 0 评论 -
python输出百分数
方式1:直接使用参数格式化:{:.2%}{:.2%}之作用: 显示小数点后2位,例如:1. 显示两位小数>>> print('percent: {:.2%}'.format(40/50))percent: 83.35%2. 不显示小数:{:.0%},即,将2改为0:>>> print('percent: {:.0%}'.format(42/50))percent: 83%方式2:格式化为float,然后处理成%格式: {:.2f}%与方式1原创 2020-10-05 15:22:01 · 2683 阅读 · 0 评论 -
pycharm 一直 connecting to console 解决方案
国内网上的基本都不太好使国外也没什么准确方案快速方案删除所有的anaconda path 变量然后重装之后正常原创 2020-10-03 19:31:37 · 612 阅读 · 0 评论 -
TypeError: ufunc subtract cannot use operands with types dtype(‘O‘) and dtype(‘M8[ns]‘)
Pandas 处理两列时间,想求时间差,在做差时报错如下:TypeError: ufunc subtract cannot use operands with types dtype('O') and dtype('<M8[ns]')bug 解释:1. 'b' boolean 'i' (signed) integer 'u' unsigned integer 'f' floating-point 'c' complex-floati..原创 2020-09-30 10:35:39 · 2009 阅读 · 0 评论 -
关于python的分组函数
import pandas as pdimport numpy as npdf00 = pd.DataFrame({'key1':['a','a','b','b','a'],'key2':['one','two','one','two','one'],'data1':np.random.randn(5),'data2':np.random.randn(5)})df00group1=df00.groupby(['key1','key2'])# print(group1)[x for x in g.原创 2020-09-28 15:01:53 · 274 阅读 · 0 评论 -
python 去极值方法(三种举例)
import numpy as npimport pandas as pdfrom pandas import Seriesdef filter_extereme_MAD(series,n): median=series.quantile(0.5) n1_median=((series-median).abs()).quantile(0.50) max_rangef=median+n*n1_median min_range=median-n*n1_median .原创 2020-09-23 16:52:10 · 3373 阅读 · 0 评论 -
anaconda linux安装
1.从官网下载Linux版本的anaconda,https://www.anaconda.com/download/2.安装anaconda,执行下列命令bash Anaconda2-5.0.0.1-Linux-x86_64.sh3.在安装过程中会显示配置路径Prefix=/home/jsy/anaconda2/4.安装完之后,运行python,仍是ubuntu自带的python信息,需自己设置下环境变量5.在终端输入$sudo gedit /etc/profile,打...原创 2020-09-23 09:46:40 · 158 阅读 · 0 评论 -
Numpy 中clip函数的使用
import numpy as npx1=[1,2,3,43,4,3,2,3,3,6,7,8]cl1=np.clip(x1,3,10)cl1原创 2020-09-17 14:52:44 · 172 阅读 · 0 评论 -
python获取数组中最多的元素(用max函数)
sample1 = [1,2,3,3,3,4,5,5]max(set(sample1),key=sample1.count)原创 2020-09-01 21:19:22 · 573 阅读 · 0 评论 -
python 匿名函数
有没有想过定义一个很短的回调函数,但又不想用def的形式去写一个那么长的函数,那么有没有快捷方式呢?答案是有的。python 使用 lambda 来创建匿名函数,也就是不再使用 def 语句这样标准的形式定义一个函数。匿名函数主要有以下特点:lambda 只是一个表达式,函数体比 def 简单很多。 lambda 的主体是一个表达式,而不是一个代码块。仅仅能在 lambda ...原创 2020-03-04 21:35:54 · 167 阅读 · 0 评论 -
Python 正则re模块之compile()和findall()
import res = "adfad asdfasdf asdfas asdfawef asd adsfas "reo1=re.compile('((\w+)\s+\w+)')reo1.findall(s)reo2=re.compile('(\w+)\s+\w+')reo2.findall(s)reo3=re.compile('\w+\s+\w+')reo3.findall(s)...原创 2020-02-27 10:29:36 · 638 阅读 · 0 评论 -
梯度提升樹算法原理小結
https://kknews.cc/news/ebnl6oy.html原创 2020-02-25 19:01:14 · 159 阅读 · 0 评论 -
python 列表排序 一篇搞定
Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。1)排序基础简单的升序排序是非常容易的。只需要调用sorted()方法。它返回一个新的list,新的list的元素基于小于运算符(__lt__)来排序。>>> sorted([5, 2, 3, 1, 4])[1, 2, 3, 4,...原创 2020-02-17 20:42:06 · 317 阅读 · 0 评论