数据分析
文章平均质量分 64
聪少少灬
欲戴皇冠,必承其重!
展开
-
多线程装饰器完整实例(控制线程数量及简单使用)
import threadingimport timeclass NewThread(object): # __init__ : 不再接收被装饰函数,而是接收传入参数. # __call__ :接收被装饰函数,实现装饰逻辑. def __init__(self, max_thread=500): self.max_thread = max_thread def __call__(self, func): # 接受函数 from f原创 2022-02-19 23:56:29 · 848 阅读 · 0 评论 -
读书笔记 --《算法图解》
1. 大O表示法算法的运行时间用大O表示法表示大O运行时间转换为操作数算法的速度指的并非时间,而是操作数的增速(随着输入的增加,其大O运行时间将以什么样的速度增加)快到慢函数函数O(1)常量时间,哈希O(log2(n))对数时间,二分查找O(n)线性时间,简单查找O(nlog2(n))快速排序O(n2)选择排序(冒泡)O(n!)旅行商问题说明:1. 旅行商前往n个城市,确保旅程最短。求可能的排序:n!种可能方案2. 仅当原创 2021-05-09 18:16:16 · 1316 阅读 · 11 评论 -
get_dummies用于机器学习的特征处理
分类特征有两种:普通分类:性别、颜色顺序分类:评分、级别对于评分,可以把这个分类直接转换成1、2、3、4、5表示,因为它们之间有顺序、大小关系但是对于颜色这种分类,直接用1/2/3/4/5/6/7表达,是不合适的,因为机器学习会误以为这些数字之间有大小关系get_dummies就是用于颜色、性别这种特征的处理,也叫作one-hot-encoding处理比如:男性:1 0女性:0 1这就叫做one-hot-encoding,是机器学习对类别的特征处理...原创 2020-12-09 16:48:19 · 1009 阅读 · 0 评论 -
寻找最影响预测结果的特征
导入相关的包import pandas as pdimport numpy as np# 特征最影响结果的K个特征from sklearn.feature_selection import SelectKBest# 卡方检验,作为SelectKBest的参数from sklearn.feature_selection import chi2导入数据df = pd.read_csv("./datas/titanic/titanic_train.csv")df = df[["Pa.原创 2020-12-09 16:40:49 · 475 阅读 · 0 评论 -
Sklearn实现泰坦尼克存活率预测
实例目标:实现泰坦尼克存活预测处理步骤:输入数据:使用Pandas读取训练数据(历史数据,特点是已经知道了这个人最后有没有活下来)训练模型:使用Sklearn训练模型使用模型:对于一个新的不知道存活的人,预估他存活的概率# 步骤1:读取训练数据import pandas as pddf_train = pd.read_csv("./datas/titanic/titanic_train.csv")df_train.head()# 我们只挑选两列,作为预测需要的特征featur原创 2020-12-09 16:27:48 · 191 阅读 · 0 评论 -
归一化处理----对数值列按分组的归一化
归一化概念将不同范围的数值列进行归一化,映射到[0,1]区间好处更容易做数据横向对比,比如价格字段是几百到几千,增幅字段是0到100;同时机器学习模型学的更快性能更好公式代码示例# 实现按照用户ID分组,然后对其中一列归一化def ratings_norm(df): """ @param df:每个用户分组的dataframe """ min_value = df["Rating"].min() max_value = df["Rating"].m.原创 2020-12-09 16:03:40 · 851 阅读 · 0 评论 -
Jupyter简单绘图
参考文档:matplotlib官方pyecharts官方numpy官方绘制直方图# 使用matpoltlibimport matplotlib.pyplot as plt%matplotlib inlineplt.figure(figsize=(12, 5))plt.hist(df["MEDV"], bins=100)plt.show()# 使用pyechartsfrom pyecharts import options as optsfrom pyecharts.char原创 2020-12-07 15:01:23 · 2144 阅读 · 1 评论 -
python关于四舍五入的精度问题
问题所在:如果一个数字带有浮点数(.5),整数部分为偶数,则返回这个偶数;整数部分奇数,则返回这个奇数+1的偶数print(round(1.5), round(2.5), round(3.5))# 输出为 2, 2, 4常用解决方法:1.单个数字from decimal import Decimal, ROUND_HALF_UPdef round_dec(n, d=2): s = '0.' + '0' * d return Decimal(str(n)).quanti.原创 2020-12-01 11:24:37 · 422 阅读 · 0 评论 -
pandas入门与进阶(三)
文章目录0. 常用方法和技巧1.0. 常用方法和技巧# 将数据随机打散from sklearn.utils import shuffledf_shuffle = shuffle(df)# 字符串方法str只能用于Series,只能在字符串列上使用,不能数字列上使用# 替换掉温度的后缀℃df.loc[:, "bWendu"] = df["bWendu"].str.replace("℃", "").astype('int32')# 查看温度类型的计数df["wendu_type"].val原创 2020-11-13 08:59:44 · 245 阅读 · 0 评论 -
pandas入门与进阶(二)
文章目录1. 避免SettingWithCopyWarning报警标题1. 避免SettingWithCopyWarning报警condition = df["ymd"].str.startswith("2018-03")# 设置温差# 错误df[condition]["wen_cha"] = df["bWendu"]-df["yWendu"]# 正确1df.loc[condition, "wen_cha"] = df["bWendu"]-df["yWendu"]# 正确2df2 = df原创 2020-10-08 17:57:16 · 364 阅读 · 0 评论 -
pandas入门与进阶(一)
文章目录1.读取数据2.查看数据集基本信息3.pandas数据结构分 DataFrame 和 Series4.Pandas查询数据(推荐.loc,既能查询,又能覆盖写入)5.新增数据列00.常用方法和技巧1.读取数据import pandas as pd# 使用pd.read_csv读取数据fpath = "./datas/ml-latest-small/ratings.csv"df = pd.read_csv(fpath)# 读取txt文件,自己指定分隔符、列名fpath = "./da原创 2020-10-08 16:51:04 · 390 阅读 · 0 评论