![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
练习题
withxinxin
等下一个起点开始,我将会更好!加油
展开
-
筛选某列中包含特定值得列
语法: 1. nan 是not anumber 缩写,数据类型为 float需求: 需删除包含网红订单 -字样的列data=data_initial[~data_initial["订单标签"].isin(list_all)] 这种仅适用于 整个值 都是网红订单 的行,上图中含又多个标签的就不适用先将整列转换为 list,剔除其中的空值list=data_initial["订单标签"].values.tolist()new_list=[]print(list)for...原创 2021-09-11 16:32:11 · 186 阅读 · 0 评论 -
SQL较难
SELECT c.month1 as 月份 ,c.date1 as 日期 ,c.num1 as 累计投诉额 -- ,IFNULL(d.num2,0) as 交易额 ,SUM(d.num2)over(partition by c.month1 ORDER BY c.date1) as 累计交易额 ,c.num1/SUM(d.num2)over(partition by c.month1 ORDER BY c.date1) as 投诉率 ,row_number()over(partitio.原创 2021-06-23 17:54:05 · 112 阅读 · 0 评论 -
03-13 算法题---简单错误记录
1、题:开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理:1、 记录最多8条错误记录,循环记录(或者说最后只输出最后出现的八条错误记录),对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加;2、 超过16个字符的文件名称,只记录文件的最后有效16个字符;3、 输入的文件可能带路径,记录文件名称不能带路径。解及注释:# error_dict = { ((filename, line): [number, temp]) }error_dict原创 2021-03-13 09:12:46 · 154 阅读 · 0 评论 -
03-12 01背包问题(动态规划)+字典的构造及元素增加
1、字典data={}data[1]=[2,3]data[1].append([3,4])data[2]=[[6,7]]data[2].append([2,3,4])print(data)返回:{1: [2, 3, [3, 4]], 2: [[6, 7], [2, 3, 4]]}2、题: 有五件商品重分别为:2,3,4,5,9; 每件的价值为3,4,5,8,10,现有能装20的包,问如何装商品使得保重商品价值最大?(第i件商品重量W[i],价值V[i])解:① 构建价值动态数原创 2021-03-12 17:40:41 · 132 阅读 · 0 评论 -
03-11 字符串匹配+质数因子
一、字符串匹配问题def string_match(string,sub_str): a=len(string) b=len(sub_str) for i in range(a+1): index=i #i表示主串中的起始下标,以及第几次匹配 for j in range(b): #j遍历的是子串的每一个元素 if string[index]==sub_str[j]:原创 2021-03-11 17:59:10 · 61 阅读 · 0 评论 -
03-10 python读取txt文本内容并统计没法词汇出现的频率
1、读取,统计,写入保存import jsondef read_txt(): data={} k=1 with open('./data.txt','r',encoding='utf-8') as fp: for line in fp.readlines(): line=line.split() for i in line: if i not in data:原创 2021-03-10 08:54:05 · 162 阅读 · 0 评论 -
03-09 罗马数字转 整数
class Solution: def romanToInt(self,s): m=0 list=[] num=0 for i in s: if i=='I': list.append(1) if i=='V': list.append(5) if i=='X': li原创 2021-03-09 09:52:15 · 64 阅读 · 0 评论 -
03-09 贪心算法-5
# 1、从输入的字符串中删除k个数字,是剩余数字组成的数最大/最小def delnum(s,k): if len(s)<k: return None s=list(s) flag=0 while k!=0: if flag==0: for i in range(len(s)-1): #剩余数最大/最小的话反之#删除规则有二:①删除第一个比右边大的数(最小的 删第一个比左边大的数原创 2021-03-09 08:44:34 · 49 阅读 · 0 评论 -
03-08算法编程题 -4
1、 将十六进制数转换为十进制知识点补充:1、字符串可被遍历和切片s='0xada67'b=s.strip('0x')print(b)c=s.replace('0x','')print(c)d=c[::-1]print(d)返回:ada67ada6776adafor i ,j in enumerate(c): print(i+j) 返回: TypeError: unsupported operand type(s) for +: 'int' and 's原创 2021-03-08 22:43:06 · 44 阅读 · 0 评论 -
03-07 编程算法题-2
2、链接:https://www.nowcoder.com/questionTerminal/67df1d7889cf4c529576383c2e647c48来源:牛客网开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理:1.记录最多8条错误记录,对相同的错误记录(即文件名称和行号完全匹配)只记录一条,错误计数增加;(文件所在的目录不同,文件名和行号相同也要合并)2.超过16个字符的文件名称,只记录文件的最后有效16个字符;(如果文件名不同,而只是文件名的后16个字原创 2021-03-08 22:31:50 · 69 阅读 · 0 评论 -
03-08 编程题(3)
1、编程题:有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被删除。while True: try: N=int(input()) num=[x for x in range(原创 2021-03-08 20:24:33 · 147 阅读 · 1 评论 -
03-07 算法题-1
1、链接:https://www.nowcoder.com/questionTerminal/3897c2bcc87943ed98d8e0b9e18c4666来源:牛客网输入包括多组测试数据。每组输入第一行是两个正整数N和M(0 < N <= 30000,0 < M < 5000),分别代表学生的数目和操作的数目。学生ID编号从1编到N。第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩接下来又M行,每一行有一个字符C(只取‘Q’或‘U’)原创 2021-03-07 21:56:05 · 298 阅读 · 0 评论 -
03-07编程题练习
1、 str.split() --返回值是一个list(数组),split() 参数是分割的依据a=input()print(a)print(type(a))b=a.split(' ')print(b)c=a.split("-")print(c)返回值123 4 5 6123 4 5 6<class 'str'>['123', '4', '5', '6']['123 4 5 6']2、输入包括多组测试数据。每组输入第一行是两个正整数N和M(0 < N &原创 2021-03-07 21:15:22 · 81 阅读 · 0 评论 -
03-04 SQL查询练习
1、用户信息表需查询返回下:注:该手机厂商想要分析应用中相机的活跃情况,需统计如下信息:某日活跃用户在后续一周内的留存情况(计算次日留存用户数,3日留存用户数,7日留存用户数)①某日活跃用户解析:某日- select 登陆时间用户数- count(用户id),又有用户一日启动登陆多次,需去重应用为 相机 -where 应用= ‘相机’又返回的0501 ~0510 ,以日期分组-group by= 登陆时间select 登陆时间,count( distinct 用户 id)from原创 2021-03-04 21:43:45 · 60 阅读 · 1 评论 -
成都市二手房行情分析
一、数据爬取利用python爬取链家网成都市二手房信息,具体使用scrapy框架写爬虫程序爬取信息。1、spider文件(具体爬虫代码)import scrapyimport timeimport randomfrom LianJia.items import LianjiaItemclass LianJiaSpider(scrapy.Spider): name = 'LianJia' # allowed_domains = ['www.xxx.com'] # 起始原创 2021-03-02 14:39:53 · 822 阅读 · 2 评论 -
03-02 成都二手房之爬虫部分
1、spider文件import scrapyimport timeimport randomfrom LianJia.items import LianjiaItemclass LianJiaSpider(scrapy.Spider): name = 'LianJia' # allowed_domains = ['www.xxx.com'] # 起始url # start_urls = ['https://cd.lianjia.com/ershoufang/p原创 2021-03-02 10:32:06 · 130 阅读 · 0 评论 -
03-01(成都二手房项目)数据中筛选 每年的均价和挂牌量
1、2016年的数据筛选#2016年筛选data1=data.loc[(data['挂售时间']>='2016-09-06')&(data['挂售时间']<='2016-12-31')]#2017年筛选data2=data.loc[(data['挂售时间']>='2017-01-01')&(data['挂售时间']<='2017-12-31')]...原创 2021-03-01 23:27:22 · 94 阅读 · 0 评论 -
02-28 python正则提取(98.46㎡)-数字
1、如:import res='85.45㎡'result=re.findall('\d+\.?\d*',s)print(result)原创 2021-02-28 23:15:11 · 67 阅读 · 0 评论 -
02-27成都二手房分析之分析
三、数据分析分析目的1、近半年成都二手房整体挂牌量及均价走势如何?2、目前成都二手房价位、房源有什么特点?3、成都各区县的挂牌情况,找出抛压最大的区域?数据清洗首先查看依稀我爬取的数据,共计23个维度,有些可以进行维度细分,比如:所在楼层、抵押信息等。在进行数据清洗清洗前使用pandas_profiling对爬取的数据进行快速的统计分析如下:#代码import pandas-profiling从统计分析报告内容可以看出本次爬取数据共计55555行,23列,存在89重复行,重复占比小于原创 2021-02-27 23:31:03 · 586 阅读 · 1 评论 -
成都链家项目之-存储部分
1、爬虫部分2、存储部分2-1 :MYSQL准备:1.安装mysql2.创建数据库->table3、分析部分原创 2021-02-27 13:41:57 · 78 阅读 · 0 评论 -
09-25 tableau相关
一、tableau简介:tableau是一款定位于数据可视化敏捷开发和实现的上午只能展现工具,可以实现交互的分析和仪表使用,从而帮助企业快速的认识、理解和分析业务,以便应对快速变化的市场环境带来的挑战。二、tableau特征:1、高效性2、简单易用3、可连接多种服务器三、产品体系:1、制作报表、视图和仪表盘的桌面端设计和分析工具 tableau desktop2、适用于企业部署的tableau server产品。3、使用于网页上创建和分享数据可视化内容的服务产品 tableau原创 2020-09-25 07:40:18 · 406 阅读 · 0 评论 -
10-13 python小练习
import pandas as pddf=pd.read_excel("C:/Users/10110096c/AppData/Roaming/Foxmail7/Temp-6668-20201012201231/test001.xlsx")读取失败,原创 2020-10-13 03:30:58 · 94 阅读 · 0 评论 -
10-13 C语言例题练习
1、是否会输出 “hello-std-out”?#include<stdio/h>#include<windows.h>int main(){ while(1) { fprintf(stdout,"hello-std-put"); fprintf(stderr,"hello-std-out"); sleep(1); } return 0;}备注:stdout和stderr是不同设备描述符。stdout时块设备,stderr不是。对于块设备,只有当以下原创 2020-10-13 02:16:17 · 88 阅读 · 0 评论 -
09-20 hive SQL窗口函数+ 练习重点练习题
Hive SQL窗口函数:核心语法主框架:8-Select1 -From (left table)3- (join_type)join(right_table) 2- On4--Where5-Group by6- With7-Having9-Order by10-Limit1、 sum()、avg()用于累计窗口函数2、 row_number(),rank() 用于创建排序窗口函数3、 ntile()分组查询窗口函数4、 lag(),lead()偏析分析窗口函数累计窗口原创 2020-09-20 17:27:29 · 450 阅读 · 0 评论 -
09-16 交易分析
交易分析一、预备知识各种常见的app类型购物类app --电商平台类 京东淘宝拼多多 流量,用户,销售额社交类app 微信,qq 非常注重流量 盈利靠:广告3、旅游类app 中国铁路,携程,飞猪 携程,飞猪赚 分成(差价) 保险(如机票保险的分成) 买票时候的加速包(排序提前) 4、 财务类app 各种银行(各种充值缴费,) 银行主营: 理财,性用卡分期(贷款) 5、地图类(百度高德) apr接口服务 信息标记-重点突出 6、新闻类app(今日头条,趣原创 2020-09-16 12:39:04 · 1116 阅读 · 0 评论 -
09- 15 hivesql 基础
hivesql 基础:hive简介:hive是基于hadoop的数据仓库mapreduce简介:基础语法:查询语句:select a from b where c ;Groupby 分组Order by 排序执行顺序:From(先读取表)-> where (筛选)–> group by (聚合分组)-> having-> select(选择) order by(排序)Group by 执行顺序在select之前(先分组再查询);常用函数:1、 如何把原创 2020-09-15 04:49:40 · 903 阅读 · 0 评论 -
07-22 matplotlib 绘图数据库
matplotlib 绘图数据库plot 情节、图表lib 包,库edge: 边缘,刀刃pyplot python的绘图模块折线图的绘制主要函数(十个参数):plt.plot( x,y,ls= , lw = ,c= , marker= , markersize= , markeredgecolor, markerfacecolor= label= ) x :x轴上的数据y:y轴上的数据ls(line style):折线的风格( '-' 实线 , ‘--’虚线, '-.'原创 2020-07-22 18:34:22 · 286 阅读 · 0 评论 -
07-19 pandas 数据清洗(重复值的处理+缺失值处理)
数据清洗----重复值处理记:1、现实生活中,数据并非完美的,需要对所获得的不完美的数据进行清洗才能进行后面的数据分析2、数据清洗包括 处理缺失值,重复值和异常值等3、数据清洗工作占整个数据分析项目的百分之60以上的时间一、重复值的处理重复值一般采取删除法 来处理但是有些重复值不能删除,例如订单明细,数据或交易明细数据等具体函数如下:inplace=True 加上后 所有才做才会直接作用于原始数据上import 部分和读取部分一样的,就不加详述;df.duplicated()原创 2020-07-19 19:09:00 · 285 阅读 · 0 评论 -
07-19 pandas其他函数-二
pandas其他函数二 ( 主要函数有 .rolling .shift() to_datetime() )聚合函数-apply函数1、读取数据:df=pd.read_excel('app_test01.xlsx', dtype=['tel':float,'email':str])2、将读取到的电话号码 -中间四位*表示(将中间四位切片后使用替代函数df['tel']=df['tel'].apply(lambda x: x.replace(x[3:7],****))如:0 129 3434原创 2020-07-19 19:04:14 · 161 阅读 · 0 评论 -
07- 18 pandas 其他函数之一
其他函数主要有对 字符数据的处理, 对int或float数据的处理, 对日期数据的处理等import pandas as pdimport numpy as npimport os os.chdir(' ....') 将当前路径切换到存储文件的路径,方便读取文件数据cars=pd.read_csv('文件名.csv') 读取文件cars.head(10) --读取前十行1、查看数据中每个变量(即每个列名)的数据类型cars.dtypes2、对日期时间格式数据进行操作原创 2020-07-18 18:40:50 · 89 阅读 · 0 评论 -
07-18 透视图 和交叉表
数据透视表示常见工具值一,需要根据行或者列对数据进行 各个维度的数据的汇总,自pandas中,提供了相关函数的解决此类问题1、pivot_table()pivot_table(data,index,columns,value,aggfunc,fill_value,margins,margins_name=)data---数据index---行索引columns--列索引value--分组字段(必须是int 、float,不能是str)aggfunc--聚合函数fill_value---对数原创 2020-07-18 11:23:01 · 200 阅读 · 0 评论 -
07-17 分组聚合--基本的统计方法
分组聚合–主要有以下知识点:1、描述性统计知识 ,如min() 最小值,max() 最大值,median() --中位数,mead() 均值,quantitle 分位数,quantitle(0.1,0,2,0.5,0.8)分别表示 十分位数,二十分位数,五十分位数--又叫中位数,八十分位数等2、分组运算方法--groupby ,类似于SQL中的groupby方法3、聚合方法--egg,apply和transfrom等实例如下:os.chdir('数据存储路径')sales=pd.r原创 2020-07-17 23:51:31 · 554 阅读 · 0 评论 -
06-19 select-2(字典游标+解包语法)
1、字典游标原创 2020-06-20 17:44:26 · 108 阅读 · 0 评论 -
06-14 SQL语言建表实操二
1、建表员工与部门2、添加数据和查询 -> ; mysql> use helloDatabase changedmysql> select * from tb_emp ;+------+-------+-------+--------+------+-----+| eno | ename | sal | job | mar | dno |+------+-------+-------+--------+------+-----+| 1001 | 李原创 2020-06-14 22:49:38 · 123 阅读 · 0 评论 -
06 - 12 mysql之SQL语言实操
insert into插入数据时,一次插一组数据没问题,插多组就包错,为什么?mysql> sert into tb_dept values -> ( 10 , '技术部' , '成都' ) ;1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ser原创 2020-06-12 23:10:44 · 138 阅读 · 0 评论 -
06—05 MySQL 使用五 项目实例
实例项目:– create原创 2020-06-05 22:15:02 · 331 阅读 · 0 评论 -
06-04MySQL使用四
查询总结:1、确定要查的目标,如学生姓名、平均成绩2、根据查询目标确定查询的表,如 tb_stuent ,tb_score3、 不存在的列(平均成绩) ,通过子查询新建产生,新表可重命 名引用;4、多个目标,多个表需通过共有元素建立联系 ; 4.2 确定共有元素;分组查询和聚合函数:group by,order by ,where 三者在一起的使用顺序:筛选,分组,排序– 查询学号为1001的学生的所有课程的平均分错误:select couid,avg(scmark原创 2020-06-04 00:09:46 · 216 阅读 · 0 评论 -
05-27 练习之003 字符串是否有效(括号)
练习之003 给定一个只包含’(’, ‘)’, ‘[’, ‘]’, ‘{’, '}'的字符串,判断该字符串是否有效?字符串有效需要满足:1.左边括号必须用相同类型的右括号闭合。2. 左括号必须以正确的顺序闭合。注意:空字符串可被认为是有效字符串。比如:输入: “()” 返回 true输入:"()[]" 返回 true 输入:"(]" 返回 false思路:字典+栈字典储存对应括号遍历字符串,左括号入栈,右括号分情况:class Solution: def isvalid原创 2020-05-27 22:27:29 · 91 阅读 · 0 评论 -
05-23 练习之003 串联字符串
解法一:原创 2020-05-23 23:03:42 · 159 阅读 · 0 评论 -
05-04 求负数二进制中1的个数
# 求整数二进制中1的个数?# 若整数为整数,直接求二进制,将其转为str遍历判断是否1,# 若为负数,求其补码,再解题, 问:整数二进制指的补码还是原码?def count1(n): print(bin(n)) if n<0: n=n & 0xffffffff ''' 这里的返回结果为十进制,如 ...原创 2020-05-04 19:46:39 · 723 阅读 · 0 评论