当前位置: 首页 > news >正文

自己做网站要会什么软件下载北京网站优化方案

自己做网站要会什么软件下载,北京网站优化方案,雄安做网站的公司,wordpress用的编辑器外接一. 检测重复值 1.1 检测 data pd.read_csv("./teacher/订单数据.csv")检测行与行之前是否有重复值 data.drop_duplicates()检测 列是否有重复值出现, keep first 从前往后判定 , last是从后往前判定data.drop_duplicates(subset["产…

一. 检测重复值

1.1  检测

data =pd.read_csv("./teacher/订单数据.csv")检测行与行之前是否有重复值
data.drop_duplicates()检测 列是否有重复值出现, keep = first 从前往后判定 , last是从后往前判定data.drop_duplicates(subset=["产品类别","省份"],keep="last")

1.2 删除重复值   drop_duplicates

data.drop_duplicates(subset = ["产品类别","省份"],keep="first")

二. 时间分组

2.1 时间修饰器

数据类型必须是 datetime64[ns]可以获取年份
data.日期.dt.year获取周几 但是默认周日 是 0 ,用replace 将 0 换成 7
data.日期.dt.weekday.replace({0:7})

2.2  将 data 表 的日期 按照 年进行分组

data.groupby(by=[data.日期.dt.year]).agg({"金额":"sum"})用时间修饰器 将 日期 提取年份

2.3   将 data 表 的日期 按照 年月 进行分组

  • data.日期.dt.strftime("%Y-%m-01") 
    • strftime 相当于python 中的 f“{}”

data.groupby(by=[data.日期.dt.strftime("%Y-%m-01")]).agg({"金额":"sum"})

2.4 下单的时段 

  • 0-4 : 午夜   5-7 : 凌晨    8-11: 早晨   12-14: 中午  15-18 : 下午    19-21 : 傍晚   22 - 23 : 深夜
定义时段
  •      map()  (是对series 进行循环的)
def func(x):if x<5:return "午夜"elif x<8:return "凌晨"elif x<12:return "早晨"elif x<15:return "中午"elif x<19:return "下午"elif x<22:return "傍晚"else:return "深夜"data["时段"] = data.日期.dt.hour.map(func)data.日期.dt.hour 这里计算出 hour后, 返回到func中,再返回出 相应的时间

2.5 下单时间距今差值

     计算数据的最大的日期

     way1
ds = data.groupby(by=["省份"]).日期.max()Timestamp('2016-07-28 20:12:12')因为ds = data.groupby(by=["省份"]).日期.max() 计算出来的数据类型是时间戳
所有想计算出 天数  需要用  np.timedelta64(1,"D")(datetime(2016,7,29) - ds)  / np.timedelta64(1,"D")

    三 .重采样(resamle)

  • 要求日期时间类型的列 必须作为行索引
将 列 日期 转为 行索引
data.set_index(["日期"],inplace=True)data.resample("Y").agg({"金额":"sum"})
这样就会 按照年进行分组金额
日期	
2013-12-31	853625
2014-12-31	124443
2015-12-31	1228887
2016-12-31	377721

四. 数据分箱 (只能对序列 类型分箱

  • 连续数据类型 : 数字
  • 离散数据类型 : 文字
  • 一般看的数据表达的含义
    • 连续 : 时间类型 可以进行 运算 ,也可以 进行正反推
    • 离散 : 当前 时间 范围有限,所以任务 时间 是离散型

数据的分箱 可以 把 连续数据类型 修改成 离散数据类型

  • 时间 : 0~23 就是离散类型

4.1 pd.cut() 分箱操作

pd.cut(data.金额,bins=1000)
分箱操作  bins 是分箱的数量
三种分箱操作
pd.cut(data.金额,bins=1000) #等分间隔
pd.cut(data.金额,bins=range(0,20001,5000))[(0, 5000] < (5000, 10000] < (10000, 15000] < (15000, 20000]pd.cut(data.金额,bins=[0,500,1500,5000,10000,20000],labels=list("ABCDE"))['A' < 'B' < 'C' < 'D' < 'E']

4.2  按照 百分位进行 分箱 , 就是 25% ,50%  (pd.qcut)

pd.qcut(data.金额,q=4)  意思是 按照 4 分位进行计算 0.25
[(1.999, 15.75] < (15.75, 40.0] < (40.0, 175.0] < (175.0, 17890.0]]可以用
data.金额.quantile(0),data.金额.quantile(0.25),data.金额.quantile(0.5),data.金额.quantile(0.75),data.金额.quantile(1) 进行验证(2.0, 15.75, 40.0, 175.0, 17890.0)

五. 字符修饰器

  5.1   contains()  包含...

#包含自行车字样 
data.loc[data.产品子类别.str.contains("自行车")].groupby(by=["产品子类别"]).金额.sum()

5.2  startswith()  以...开头

data.loc[data.产品子类别.str.startswith("自行车")].groupby(by=["产品子类别"]).金额.sum()

5.3   endswith()  以... 结尾

data.loc[data.产品子类别.str.endswith("自行车")].groupby(by=["产品子类别"]).金额.sum()

5.4   str.upper().  大写     str.lower().   小写       str.title().   首字母大写       str.swapcase()  大小写转换

 data.产品名称.str.upper().str.lower().str.title().str.swapcase()

5.5    字符串的分割 与 拼接   str.split().     str.join()

data.产品名称.str.split(" ").str.join("-")以空格分隔 ,再用 - 拼接

5.6  指定出现的字符

data.产品名称.str.count("T")

5.7 每个字符的长度

data.产品名称.str.len()

5.8  编码和解码   encode 编码  decode 解码

data.产品子类别.str.encode("936").str.decode("GB2312")

5.9  居中对齐   左对其   右对齐

data.产品子类别.str.center(15)  居中对齐
data.产品子类别.str.ljust(15)    左对齐
data.产品子类别.str.rjust(15)    右对齐

6.0  字符长度固定  zfill  和  str.pad()

data.产品子类别.str.zfill(10)0       00000车胎和内胎
1       0000000骑行服
2       00000旅行自行车
3       00000山地自行车
4       00000车胎和内胎data.产品子类别.str.pad(10,side="left",fillchar="-") 左填充 -
0       -----车胎和内胎
1       -------骑行服
2       -----旅行自行车
3       -----山地自行车

6.1  数据类型的判断

s.str.isalpha()  #字母s.str.isnumeric()  #纯数字组成s.str.isdigit()   #数字s.str.istitle()  # 开头是大写 其他都小写

六 . 时间序列

6.1  获取当前日期时间   datetime.now()     .strftime()  就是类似format 

#获取当前日期时间
datetime.now().strftime("%Y-%m-%d %H:%M:%S")

6.2  时间戳  Timestamp

pd.Timestamp(1234567890,unit="s",tz="Asia/ShangHai")
unit是 时间单位 s是秒 m是月 ,tz是时区把一个序列中的字符 转换成  datetime64
pd.to_datetime([("2015-1-1")])
DatetimeIndex(['2015-01-01'], dtype='datetime64[ns]', freq=None)#Timestamp  
pd.Timestamp(datetime(2050,1,1))
Timestamp('2050-01-01 00:00:00')pd.Timestamp("2038-1-1 T23")  
#Timestamp('2038-01-01 23:00:00')
#T 是 time 时间

6.3  时间的相关计算

  • Timedelta :代表 时间单位
Timedelta :代表 时间单位
pd.Timestamp(2234567890,unit="s") - np.timedelta64(1,"D")np.timedelta64(1,"D")  1 d for day
  • 一年当中第多少天
pd.Timestamp(2234567890,unit="s").dayofyear  #一年当中第多少天
  • 一年中的第多少周
pd.Timestamp(2234567890,unit="s").weekofyear #一年中的第多少周
  • 当前月份有多少天
pd.Timestamp("2020-2-2",unit="s").days_in_month

七. 内置样式

给空值 高亮
df.style.highlight_null()df.style.highlight_between(subset=["A"],color="#ff10002f")df.style.background_gradient(cmap="rainbow")
梯度背景色格式
df.style.format({"A":"¥{:,.2f}"})"¥" 表示人民币符号。
{:,.2f} 是一个格式说明符,用于格式化浮点数,具体含义如下:
: 表示格式说明符的开始。
, 表示千位分隔符,用于在数字中插入逗号,提高可读性。
.2f 表示保留两位小数的浮点数日期
df1.style.format({"日期":"{:%Y年%m月%d}"})订单ID	日期
0	a01	2015年11月13
1	a02	2015年11月20
2	a03	2015年11月11
3	a04	2015年07月27
4	a05	2015年11月16df1.日期.dt.strftime("%Y年")
0    2015年
1    2015年
2    2015年
3    2015年
4    2015年
Name: 日期, dtype: object

http://www.dt0577.cn/news/49983.html

相关文章:

  • 免费购物网站制作营销是什么意思
  • 日照市五莲县网站建设企业网上的推广
  • mac编辑page转wordpress连云港seo优化
  • wordpress 登录后跳转下载优化大师app
  • 电商网站统计怎么做汕头网站关键词推广
  • 做书架的网站小程序
  • 菏泽网站建设哪好企业培训员工培训平台
  • 品牌网站建设定位免费收录链接网
  • 昆明做网站那家好seo关键词排名系统
  • 网站哪个公司做的比较好的优化网站怎么真实点击
  • 在网站做商城平台需要哪些资质网络seo公司
  • 书店网站建设方案南京seo排名
  • 网站ppt怎么做深圳网站制作公司
  • 石家庄网站制作机构免费制作个人网站
  • 做网站需要哪些资料在线推广企业网站的方法
  • 全国最有实力的信息网络公司排名淘宝关键词优化怎么弄
  • 网站建设趋势2017创建网站要钱吗
  • 在线网站搭建系统常州百度推广代理公司
  • php网站系统官方正版清理优化工具
  • 做网站一定要购买虚拟主机吗线上商城推广软文
  • 怎么做自己的博客网站今日国内新闻大事20条
  • 黑龙江网络科技有限公司广州做seo的公司
  • 广州网站建设公司排行网站流量宝
  • 深圳做网站设计制作开发深圳网站建设系统
  • 中国轻工建设公司网站百度seo优化分析
  • WordPress简约资讯主题关键词排名优化公司推荐
  • 南京营销型网站制作郑州企业网站seo
  • 怎么做网赚网站谷歌官网入口
  • 企业为何做网站seo薪资seo
  • 专业的做网站的seo服务商技术好的公司