利用python进行数据分析复现

一直以来,都想学习python数据分析相关的知识,总是拖拖拉拉,包括这次这个分享也是。《利用python进行数据分析 第2版》是一次无意之间在简书上看到的一个分享,我决定将很详细。一直都想着可以复现一下。但总有理由,忘记和拖拉。这次我想通过分享的方式来监督自己学习。争取一周更一次。中间每天都还是要学习,只是周末再分享。 放上原链接: https://www.jianshu.com/p/04d180d90a3f 作者在链接中放上了书籍,以及相关资源。因为平时杂七杂八的也学了一些,所以这次可能是对书中的部分内容的复现。也可能有我自己想到的内容,内容暂时都还不定。在此感谢原简书作者SeanCheney的分享。

直接从第二章开始。

第二章 Python语法基础,IPython和Jupyter Notebooks

我使用的是Jupyter Notebooks进行所有操作

import numpy as np

通过上述语句,导入import后面的包,as 后跟在本次运算中,对那个包取的别名。在Jupyter Notebooks中,输入完一句后,运行并跳到下一行中,按shift + enter

data = {i : np.random.randn() for i in range(7)}
'''上述语句表示,对data赋值,data是一个字典,一共有7对,每一个值都是由np.random.randn()产出的随机数。'''
'''导入包的时候,也可以直接导入我们需要的那个函数'''
from numpy.random import randn
data = {i : randn() for i in range(7)}
print(data)

tab补全

这个是在IPython shell 中可以对文件路径、命名、对象和模块属性这些进行文件全路径的补全 当我输入到numpy.的时候,按下tab键,就可以补全后面的函数。

自省

加上?,就可以显示出对象的详细信息。 加上??,就可以显示出对象的源代码。

%run命令 这个是可以在IPython中运行另一段代码,而在jupyter notebook中,这是用%load Ctrl+C 可以打断正在运行中的代码。在我目前用到的IDE中,基本上行都是可以用Ctrl+C打断运行代码 IPython和jupyter notebook都有一套快捷键,在jupyter notebook中,可以参考帮助文档。

IPython中还有一套魔术命令,但是我一般都不用IPython,所以这一段我就没细看。有需要的可以去看原作者的帖子内容。 在jupyter notebook中可以随意复制粘贴,但IPython shell 的风格和cmd较为接近,复制粘贴相对麻烦,可以使用%paste 和%cpaste可以运行剪切板中的代码,%cpaste在运行的时候会给出一段提示。jupyter notebook中就不能使用这个了。

Python语法基础

通过缩进表示文档的语句之间的空间。一般使用四个空格,或者按一下Tab键。 在python中,数字、字符串、函数、模块都可以作为一个对象。同时,在语句中也可以通过#键,对每一行内容进行一个注释。 书中还提到了一个鸭子类型,即只要满足我们需要功能,那他就是符合我们要求的。这可以去判断一个对象是不是可以达到我们需要的功能。 Python中,通过=传递数组,在=前后的变量对应的内容是一样的,变量类似指针,同时指向内存的一个内容,改变其中的一个,会影响另一个的值。

a=[1,2,3]
b=a
b
# out:[1,2,3]
a.append(3)
b
# out:[1,2,3,4]

引入

这个可以导入我们之前编辑的文件 可以引用我们在另一个文件确定的函数等等。 这是在同一个文件夹中便捷的some.py文件

import some
some.f(2)
# out:4
print(some.g(3,4))
some.PI
# out:7
# out:3.14159

运算符

具体的内容可以参照这个内容

python中字符串和元祖是不可变的,其余的基本上都是可变的。 Python的标准库中有⼀些内建的类型,⽤于处理数值数据、字符串、布尔值,和⽇期时间。这些单值类型被称为标量类型,本书中称其为标量。

python中的数据类型主要是int和float类型,int类型可以存储任意大的数。float为浮点数

python中还有字符串,一般是放在' '中间,原始的字符串不能修改,可以通过把一个字符串赋值给另一个值进行修改,但不改变原始值。 可以通过list方法打开字符串,然后就可以进行相关操作了。 有些时候由于字符串中有一些双斜杠,这个时候可以在字符串前面加一个r,表示字符串只是表示字符串本身。就不会出现转义等情况了。 编码和解码 ,编码使用encode ,解码使用decode

a='hallo'
x=list(a)
x
# out:['h', 'a', 'l', 'l', 'o']
m=a.encode('utf-16')
m
# out:b'\xff\xfeh\x00a\x00l\x00l\x00o\x00'

布尔值,主要是true和false 类型转换,可以转换对象的类型,str(),bool(),float()等,可以转成相关的str,bool,float类型 None 空值 时间函数 datetime

from datetime import datetime, date, time
dt = datetime(2020,1,4,20,00,12)#年月日时分秒
print(dt.date())
print(dt.time())
# out:2020-01-04
# out:20:00:12
dt.strftime('%m/%d/%Y %H:%M')
# out:'01/04/2020 20:00'

控制流: if 语句,主要包括:if ,elif,else for 循环 while语句 pass 语句 range循环:主要是迭代器

三元表达式

value = true-expr if condition else false-expr
# 等价于
if condition:
    value = true-expr
else:
    value = false-expr

转至其他文章

  • 30
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熬夜写代码的平头哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值