- 博客(25)
- 收藏
- 关注
原创 SQL分组后取出每组的第N条(或第几大/小的)记录(全网最简单的方法)
在实际工作中,有时我们需要用SQL语句对数据分组后取出每一组内的某一条(如第1条,第2条……第n条,或者第1大/小,第2大/小……第n大/小)记录,下面将介绍实现这一需求的最简单的SQL查询方式。需求:查询每门课程成绩排名第3的学生姓名,对应的课程名称和成绩思路:1. 按照课程名称(course)字段对上表score进行分组,再按照成绩(point) 对每个分组内的记录...
2020-04-24 16:02:11 5042 2
原创 更改Jupyter Notebook的工作路径
import osos.getcwd() # 查看当前工作目录os.chdir(r"F:\") # 更改到新的工作目录,注意工作路径的转义(r,或\\或/)
2020-09-04 22:24:22 279
原创 美化Jupyter Notebook中DataFrame
首先,使用sklearn中自带的数据集创建一个DataFrame:import pandas as pd from sklearn.datasets import load_iris x=load_iris().data x=pd.DataFrame(x,columns=load_iris().feature_names)y=load_iris().target y=pd.DataFrame(y) df=pd.concat([x,y],axis=1)df.head(10) 生成
2020-08-06 12:14:49 1436
原创 Jupyter Notebook导出PDF时报错“nbconvert failed: xelatex not found on PATH……”的解决办法
对于没有经过特别配置的Jupyter Notebook,我们在导出文件为PDF时经常会出现以下报错:nbconvert failed: xelatex not found on PATH, if you have not installedxelatex you may need to do so. Find further instructions athttps://nbconvert.readthedocs.io/en/latest/install.html#installing-tex.
2020-08-06 10:53:26 38162 26
原创 Jupyter Notebook导出为PDF(保存为md文件,再用Typora导出为PDF)
第一步:把Jupyter Notebook的内容导出为“md”(Markdown)文件第二步:用“Typora”软件打开上面保存的“md”文件“Typora”软件的下载地址:https://typora.io/#windows第三步:导出为PDF
2020-08-06 09:26:08 4154 2
原创 Python代码执行进度条模块-tqdm
tqdm是一个python进度条工具,可以在 Python 长循环中添加一个进度提示信息,使用时只需要封装任意的迭代器即可。安装:pip install tqdm调用:下面举个例子:from tqdm import tqdm import time for i in tqdm(range(100)): time.sleep(0.1) ...
2020-08-05 16:39:56 289
原创 where子句中嵌套select子句作为筛选条件
数据说明:学生信息表:S(S#,NAME,AGE,SEX)选课信息表:SC(S#,C#,GRADE)课程信息表:C(C#,CNAME,TEACHER)查询:全部学生都选修了的课程的编号和名称select 课程编号,课程编号 from (select C# 课程编号, CNAME 课程编号, count(distinct S# ) 选修的学生数量from SC left join C on SC.C# = C.C# group by C#,CNAMEhaving count(disti
2020-07-24 21:31:59 2002
原创 group_concat结合distinct筛选符合条件的记录
首先,创建一张外卖平台的“订单信息表”order_list,如下:查询: 2018年1月只吃了“麻辣烫”和“汉堡”的用户数量select count(*) from (select user_id, group_concat(distinct order_category) 下单菜品from order_listwhere date_format(order_time, "%Y-%m")='2018-1'group by user_idhaving 下单菜品 like '汉堡,麻辣烫'
2020-07-24 20:24:12 2706 1
原创 最简单的删除重复记录(只保留一条)的SQL方法
首先,新建一张表用于示例说明:# 新建一张表Acreate table A( id varchar(5), name varchar(5), salary float);# 插入数据(包含要去除的重复记录)insert into A VALUES( '01', 'John', 3800),('02','Tom',5000),('02','Tom',10000),('03','Sam',8600);得到测试用的表如下:这里,我们定义的重复记录是:只要“name"的字段值重复就认为两条
2020-07-24 10:32:35 14799 2
原创 自连接和笛卡尔积连接的区别
原始表“co":笛卡尔积连接:不设置连接条件的连接 注意: 1. 用于笛卡尔积连接的表可以是同一张表(要设置不同的别名,否则报错),也可以是多张不同的表; 2. 笛卡尔积连接的原理是不管两张或多张表的记录是否匹配,均一一对应生成新的记录,因此笛卡尔积连接不设置连接条件(如on,wher等)。 select *from co t1,co t2; # 注意:同一张表用作笛卡尔积连接时必须设置不同的别名,否则报错执行结果如下:自连接:同一张表被当作不同表(设置不同别名)进行连接注
2020-07-23 16:36:32 6353
原创 自连接查询结果作为from查询对象时报错“Error Code:1060.Duplicate Column name XXX“的解决方法
原始表格“test_table”:第一步:自连接select * # 使用*输出所有字段from test_table t1, test_table t2 where t1.city =t2.city and t2.sales_date=t1.sales_date+1;得到结果:第二步:讲自连接查询结果作为from的查询对象select city, sales_date, a2/a1 增长率 from (select * # 这里依然使用*输出全部子查询的字段from tes
2020-07-23 15:55:23 1476
原创 Navicat for MySQL连接数据库时报错“2059”的解决办法
Step 1: 以管理员身份打开 MySQL Command Line Client -Unicode在左下角搜索栏中输入’mysql’找到 “MySQL Command Line Client -Unicode ”并以管理员身份打开;然后输入要连接的数据库的登录密码,回车,如下所示:Step 2: 分别输入下列三个命令修改加密规则、登陆密码(密码可以直接输入原来的登陆密码保持不变)并刷新数据ALTER USER 'root'@'localhost' IDENTIFIED BY '你的mysql
2020-07-21 21:56:21 925
原创 MySQL导入外部数据时出错的解决方案 Error Code: 1290
在使用MySQL导入外部数据文件(如csv,Excel,txt等)时,优势会报错:‘Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement’,这说明我们要加载的数据文件的存放路径和MySQL服务器默认的文件上载路径不一致。此时有两种解决办法:方法一:把要加载的数据文件直接存放在MySQL默认的数据加载文件夹下再复制路径导入...
2020-07-21 18:09:11 1428
原创 Python中删除含有特定数值的行
dic={'A':[1,2,3,1],'B':[2,1,1,2]} df=pd.DataFrame(dic)df # 找出包含数值"2“的所有行(要删除的行)df[df['A'].isin([2]) | df['B'].isin([2])] # "|"表示"或” # 删除所有包含数值"2“的行(实际上是用"~"取反得到所有不包含“2的行) df[~(df['A'].isin([2]) | df['B'].isin([2]))] ...
2020-07-13 12:43:03 11052
原创 Python读取Excel时把文本数据自动识别为float或int类型的解决办法
在使用Python做数据分析时,经常需要导入保存在Excel中的数据集文件,但很多时候Python的Pandas会把Excel中的文本数据(例如员工编号,身份证号,不同城市的数字代码等数值型文本)识别为'float'或'int'类型, 而这并不是我们所需要的,特别是在有些机器学习模型中需要对连续型数据和离散型数据(字符串,也就是文本)进行严格区分。看下面的栗子:数据集Excel长这样:现在我们用Pandas把该Excel文件读入Python中:data=pd.read_excel(r"F:\...
2020-07-03 12:07:12 20889 5
转载 python sklearn库实现多元线性回归模型的建立,并进行评估和调优
https://www.jianshu.com/p/00df8c347a85
2020-06-15 21:44:36 1371
原创 LinearRegression模型与SGDRegressor模型的性能比较
https://www.cnblogs.com/King-Key/p/12024147.html
2020-06-15 08:27:22 829
原创 关于ValueError: Expected 2-D array, got 1-D array instead:的报错原因及解决办法
直接上代码来说明问题:import pandas as pdfrom sklearn.preprocessing import OneHotEncoderfrom sklearn.preprocessing import LabelEncoderfrom sklearn.preprocessing import LabelBinarizerfrom sklearn.preprocessing import MultiLabelBinarizer# 创建测试数据testdata=pd.D
2020-06-08 10:53:26 2034 1
转载 为什么要对分类型变量进行独热编码?
文章转载自:https://www.cnblogs.com/whisper-yi/p/6079177.html独热编码在数据处理中的作用独热编码即 One-Hot 编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都有它独立的寄存器位,并且在任意时候,其中只有一位有效。例如对六个状态进行编码:自然顺序码为 000,001,010,011,100,101独热编码则是 000001,000010,000100,001000,010000,100000.
2020-06-07 15:39:43 2075
原创 Python中对某一列数据添加排序序号并取出特定序号对应的行
需求:有时我们需要对DataFrame中某一列进行升序或降序排列,并取出某个/些排序序号对应的行。示例:以下是全球部分国家不同酒类(啤酒,白酒,红酒)的消耗量,我们要找出中国的啤酒消耗量在这些国家中排第几名。import numpy as npimport pandas as pd drinks=pd.read_csv(r"C:\Users\ABC\Desktop\drinks.csv",keep_default_na=False)drinks.head(10) # 设置'kepp_defa
2020-06-06 12:41:55 5867
原创 Python字符串格式化的三种方法:%, format和f-strings
Python字符串格式化的三种方法第一种:%就是上古时代的方法,Python2.6 以前的独霸天下的 "%"操作符:name='Lilei'age=100'Hello, my name is %s, and I am %s years old' %( name, age) 输出结果:第二种:format{} 直接替换字符串就是我常用的 ‘format’。Python2.6 引入,性能比 % 更强大。大概有三种写法:'Hello, my name is {}, and I am {}
2020-06-03 22:07:58 1491
原创 Python添加列值排序序号并输出指定序号对应的行
需求:对数据集中某列数据升序/降序排列并添加一列对应的排序序号;同时输出指定序号对应的行。下面以具体案例来说明怎么实现这一需求。示例:导入数据:本文引用的数据集是世界上各大洲的主要国家在某时间段内的白酒,啤酒和红酒的消耗量。drinks=pd.read_csv(r"C:\Users\grandesucesso\Desktop\drinks.csv",keep_default_na=False)drinks.head(10) # 输出前10行数据# 设置'kepp_default_na=Fal
2020-05-22 22:46:41 4564
原创 Python中自定义函数:计算字符串中每个字符出现的次数
Python中自定义函数:计算字符串中每个字符出现的次数**需求:**在Python中自定义一个函数,用该函数接收输入的字符串中每个字符出现的次数。代码:s=input('请输入字符串:')dic={} # 新建一个空字典,用来接收字符串中每个字符(键)和其出现的次数(值)for i in s: dic[i]=s.count(i) # 因为字典的键具有唯一性,因此字符串中重复的字符也不会重复出现在字典中dic 测试:输出结果:...
2020-05-15 09:13:10 8430
原创 mysql-installer-community-8.0.18.0 for Windows(64位)安装包--免积分直接下载
众所周知,在MySQL官网上下载安装包简直是龟速,这让很多想安装mysql的小伙伴简直无法忍受。今天就直接奉上mysql社区版8.0.18.0版本的安装包供各位有需要的小伙伴下载使用。...
2020-05-15 08:48:59 1734 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人