09 2021 档案
摘要:np.ogrid 和 np.mgrid 函数相似,都是返回一个多维的 meshgrid, 区别是 ogrid 返回开放式,mgrid 返回密集式数组。 而数组中的元素依据 arange 方法来产生。 参数部分需要传入一个列表,例如:[a, b, step] ( a 表示起点,b 表示终点,step
阅读全文
摘要:一、np.select函数 1.介绍 np.select 函数根据某些条件筛选某些元素。 使用语法为: import numpy as np np.select(condlist, choicelist, default=0) # 返回列表 参数(必须写成“列表”的形式): condlist --
阅读全文
摘要:一、总结 apply —— 应用在 dataFrame 上,用于对 row 或者 column 进行计算 applymap —— 应用在 dataFrame 上,元素级别的操作 map —— python 系统自带函数,应用在 series 上, 元素级别的操作 二、实操对比 构建测试数据框: im
阅读全文
摘要:要实现一个类似于 SQL 中的 case when 功能,为用户打上标签。 例如: select tj_month, name, online_time, case when online_time < 12 then '(3,12]' when online_time >= 12 and onli
阅读全文
摘要:SHOW MY CODE!! NO BB!! # -*- coding: utf-8 -*- """ Created on Fri Sep 17 16:32:54 2021 @author: Hider """ # 加载包 import pandas as pd import os os.chdir
阅读全文
摘要:在分类汇总数据中,stack() 和 unstack() 是进行层次化索引的重要操作。 层次化索引就是对索引进行层次化分类,包含行索引、列索引。 常见的数据层次化结构包含两种:表格(横表)、“花括号”(纵表)。 表格在行列方向上均有索引,花括号结构只有“列方向”上的索引。 其实,应用 stack()
阅读全文
摘要:数据分析过程中,有时出于增强数据可读性或其他原因,需要对数据表的索引值进行设定。 在 pandas 中,常用 set_index() 和 reset_index() 这两个方法进行索引设置。 一、set_index方法 1.介绍 set_index() 方法将 DataFrame 中的列转化为行索引
阅读全文
摘要:pandas.DataFrame 默认列名按字典顺序,可通过添加 columns 字段实现指定顺序。 import pandas as pd import numpy as np import os os.chdir(r'C:\Users\111\Desktop') df_size = 10 df
阅读全文
摘要:pandas 拥有强大的数据清洗能力,可以极大的简化数据处理工作。 一、数据加载及EDA import os os.chdir(r'C:\Users\111\Desktop') # 加载数据 import pandas as pd df = pd.read_excel("超市运营数据模板.xlsx"
阅读全文
摘要:一、介绍 startswith 判断系列是否以指定字符开头 endswith 判断系列是否以指定字符结尾 使用语法: Series.str.startswith(pat, na=nan) Series.str.endswith(pat, na=nan) 参数: pat -- 要搜索的字符串 不接受正
阅读全文
摘要:一、str.contains方法 1.介绍 contains 方法用于判断指定系列是否包含指定字符串。类似于 SQL 中的 like 函数,实现模糊匹配。 str 将 Series 转换为类似于 String 的结构。 返回布尔值系列或索引,具体取决于给定模式或正则表达式是否包含在系列或索引的字符串
阅读全文
摘要:一、介绍 between() 方法用于 Series 检查哪个值处在第一个、和第二个参数之间。 使用语法: Series.between(left, right, inclusive=True) 参数: left : 定义左边界 right : 定义右边界 inclusive : 布尔值 默认为:T
阅读全文
摘要:一、字符串分割split split() 方法通过指定分隔符对字符串进行切分,返回分割后的字符串列表。 使用语法为: str.split(str=" ", maxsplit=string.count(str)) 参数: -- str 分隔符 默认为所有的空字符 包括空格、换行符、制表符等 -- ma
阅读全文
摘要:一、Pandas读取剪切板数据 import pandas as pd df = pd.read_clipboard() ''' 国家 受欢迎度 评分 向往度 0 中国 10 10.0 10.0 1 美国 6 5.8 7.0 2 日本 2 1.2 7.0 3 德国 8 6.8 6.0 4 英国 7
阅读全文
摘要:一、对比总结 简单总结,通过 merge 和 join 合并的数据后数据的列变多,通过 concat 合并后的数据行列都可以变多(axis=1),而 combine_first 可以用一个数据填充另一个数据的缺失数据。 函数 说明 join 主要用于基于索引的横向合并拼接 merge 主要用于基于指
阅读全文
摘要:致力于将 Python 代码写得更加 Pythonic。 一来更符合规范且容易阅读,二来一般 Pythonic 的代码在执行上也更有效率。 一、itertools库介绍 迭代器(生成器)在 Python 中是一种很常用、也很好用的数据结构,比起列表 list 来说,迭代器最大的优势就是延迟计算、按需
阅读全文
摘要:一、背景 日常数据分析工作中,难免碰到数据量特别大的情况,动不动就2、3千万行,如果直接读进 Python 内存中,且不说内存够不够,读取的时间和后续的处理操作都很费劲。 Pandas 的 read_csv 函数提供2个参数:chunksize、iterator ,可实现按行多次读取文件,避免内存不
阅读全文
摘要:一、os.stat().st_size os.stat(filePath) 返回读取指定文件的相关属性,然后利用 stat 模块进行处理。 import os os.stat('data_feather_ys.feather') # os.stat_result(st_mode=33206, st_
阅读全文
摘要:一、背景 日常使用 Python 读取数据时一般都是 json、csv、txt、xlsx 等格式,或者直接从数据库读取。 针对大数据量一般存储为 csv 格式,但文件占用空间比较大,保存和加载速度也较慢。 而 feather 便是一种速度更快、更加轻量级(压缩后)的二进制保存格式。 二、feathe
阅读全文
摘要:Linux 下一堆各式各样的压缩文件名:.gz、.tar.gz、tgz、bz2、.Z、.tar 等众多的压缩文件名,此外 Windows 下的 .zip、.rar 也可以在 Linux 下使用。 一、基本概念 1.打包 打包是指将多个文件或者目录放在一起,形成一个总的包,便于保存和传输,但是大小是没
阅读全文
摘要:在数据建模过程中,针对入模的数据需做数据清洗,特别针对缺失数据。 缺失数据比较多的情况下,可以考虑直接删除;缺失数据较少的情况下,可对数据进行填充。 此时,fillna() 则派上用场。语法为: fillna(self, value=None, method=None, axis=None, inp
阅读全文
摘要:一、字符串替换 replace() 方法用于替换字符串。语法为: string.replace(oldvalue, newvalue, count) oldvalue -- 待替换字符串 newvalue -- 替换字符串 count -- 指定次数 默认所有 # 普通用法 txt = "I lik
阅读全文
摘要:一、使用字典 dict 统计 循环遍历出一个可迭代对象的元素,如果字典中没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在则将该元素对应的值加1。 lists = ['a','a','b',1,2,3,1] count_dist = dict() for i in lists: if
阅读全文