Python小白逆袭大神Day03课程总结

记录一下常忘的东西,等我哪天写不动代码,就来看看

  • 一、心态篇
  • 二、记录篇
    • 1、频数统计
      • (1)常规方法:
      • (2)简便方法:
    • 2、json数据集打开方式
      • (1)with法
      • (2)pd法
    • 3、python 包的有效管理方式

一、心态篇

说点题外话,老板今天又催东西和准备开会,我愧疚感瞬间充满整个人,我这两周都做了什么,好像啥都没有做,难道又要乱搞一通自己骗自己吗?此时此刻,我正回想一下为啥会一步步走到这种地步。

为什么呢?正是自己的自律与计划,两者都被打败了。很多人说控制不住自己,总想玩,我想说,没人喜欢玩,当多巴胺足够低的时候,我让你玩,你都觉得烦。我们一开始总会雄心壮志地说我一个月搞掂论文,然后写一堆计划,然后推行三天夭折了。

为什么会夭折?因为自己能力太差?因为没有氛围?一开始我是觉得是以前老干苦力,耽误了自己能力发展,觉得是自己没人带,但现在想来,本来这一切都是很正常的,你进入一个团队就要做事情无论是好差事还是苦差事,没人会为你空出一档让你提升能力的时间,即便那段时间已经出现,但你却很轻易的放过,因为你觉得这段时间我应该拿来放松,玩,尽兴。而当这段时间一过,当你感受到失去而产生的后悔莫及,再结合前面几段习惯性崩溃所累积的负累,这一次的打击将会是上一次的几倍。此处将回答为什么会夭折,因为你懒惰,你懒得每天去复盘,把损失降到最低,把收获最大化,三天后得不到反馈,自然就失效了。

那为什么会懒惰?是天性吗?我觉得未必。懒惰,每个人都有,贪玩,每个人都具备。但是为什么别人却能写出文章,而我却止步不前,甚至已经到达自暴自弃的地步呢?是因为你现在定的目标太多了,使得你执行力会缺乏,比如你现在很懊悔,想奋发图强,然后定了很多目标,要看这个网课,那个网课,跑这个代码,学那个论文,学这个框架,等等,即便你写下来后,开始执行第一项你就崩了。为什么,因为目标太宏大,我去,看网课,你以为是在跑火车,他需要理解,自己做笔记,复盘,而不是你所谓的赶进度=学会了。为什么到现在还不能盲写mnist数据集分类的代码,注意我的用词,盲写。就是什么都不看,一股劲的写完,从数据导入,网络搭建,启动事务(编译),训练,测试,可视化,说谁不会,抄谁不会,框架谁不会,从最基础的numpy到高级一点的keras,pytorch,tensorflow,caffe都能写,关键是你理解了吗?没有。目标太大,内容太杂=心态浮躁,急于求成,然后就导致自己的泛化能力差,真正实战又不会了,然后又报网课,又进入21天超神的死循环,这样3个月过去了,你还在很好意思的称自己为小白,还萌萌的。因此,懒惰并不是天性,而是由于方法出了问题,影响心态,从而使得整个人出现疲态,最终懒惰形成,然后返回第一个问题,贪玩,最后懊悔,然后又定目标安慰自己,顺便怪一下身边的人和事来减轻自己的懊悔,有时提升不了多巴胺就玩来麻痹自己,其实心里并不快乐。

论文就犹如如鲠在喉一样难受,每当想起,总想看其他论文,总会想到是否会后悔当初的所作所为。如今是要承受这一切所带来的的伤害的了,而且需要揭开伤口地直面自己的路径,这一切就像用来区块链技术一样,每一个节点都可溯源,而且无法删除,无法修改,只有追加。

解决办法:摆在心态,万事开头难,只有开始了,哪怕每天看一个论文标题也是迈开脚步;至于交流的问题,我个人是想,只是不知道队友愿不愿意。因此还是需要自己去解决,毕竟这些是自己的事情,本来就是要自己去主导;代码无论对题目有没有用,尽量多跑,多复盘,复盘>跑通!!加油吧少年,时间已没有让你去浪的余额了,对自己残忍就是对为未来的自己一种解脱。

二、记录篇

1、频数统计

话音回来,这个课程,真的不错,免费,安利一下。此处记录一下两种统计数据集中特征频次的方法,可以用于做数据挖掘中的频繁项集支持度计算。

(1)常规方法:

df = pd.read_json('data/data31557/20200422.json')
grouped=df['weight'].groupby(df['weight'])
s = grouped.count()

weight_list = s.index #x
count_list = s.values #y

A=B=C=D=0
for weight,count in zip(weight_list,count_list):
    weight=float(weight.replace('kg',''))
    if weight<=45:
        A+=count
    if weight>45 and weight<=50:
        B+=count
    if weight>50 and weight<=55:
        C+=count
    if weight>55:
        D+=count
sizes=[A,B,C,D]

(2)简便方法:

df = pd.read_json('data/data31557/20200422.json')

weights=df['weight']
arrs=weights.values

for i in range(len(arrs)):
    arrs[i]=float(arrs[i][0:-2])

bin=[0,45,50,55,100]
se1=pd.cut(arrs,bin)
print('se1:',se1)
pd.value_counts(se1)

labels='<=45kg','45-50kg','50-55kg','>55kg'
sizes=pd.value_counts(se1)

其实就是利用pandas的Series的特性来进行区间分割,继而可以计数

2、json数据集打开方式

之前第一篇我已经说过一下,这里再进行补充

(1)with法

with open('data/data31557/20200422.json', 'r', encoding='UTF-8') as file:
         json_array = json.loads(file.read())

(2)pd法

df = pd.read_json('data/data31557/20200422.json')

3、python 包的有效管理方式

许多人会以建立虚拟环境,然后最后打包成requirement.txt。不过有个缺陷是每次都要打开虚拟环境才能在本地跑
此处可以参考这种方法可以即可满足在本地跑又可以不用建立虚拟环境,毕竟在windows的虚拟环境创建方法和linux还是有点不同。

mkdir /home/aistudio/external-libraries
pip install matplotlib -t /home/aistudio/external-libraries

然后,我只需在开头加这个就完事了

import sys
sys.path.append('/home/aistudio/external-libraries')

你可能感兴趣的:(课程总结)