Python_基础_数据分析_1

数据分析基础

1.比较Python与c(numpy)在计算领域所用的时间
前提:安装对应模块

pip install numpy

然后再进行学习

import datetime as dt
import numpy as np
n = 500000
#python

start = dt.datetime.now()
A,B = [],[]
for i in range(n):
    A.append(i ** 2)
    B.append(i ** 3)
C = []
for a,b in zip(A,B):
    C.append(a + b)
usetime = dt.datetime.now() - start
print(usetime.microseconds)#单位是微秒

#numpy
D = []
start_1 = dt.datetime.now()
D = np.arange(n) ** 2 + np.arange(n) ** 3
usetime_1 = dt.datetime.now() - start_1
print(usetime_1.microseconds)
'''
结果为:621342
        8010
相差太大了
'''

**
2.了解numpy中的arange array

import numpy as np
a = np.arange(10)
print(a)#与列表不同,用空格分割
b = np.arange(1,10)
print(b)
c = np.arange(1,10,2)
print(c)
d = np.array([])
print(d)
e = np.array([10,20,30,40])
print(e)
f = np.array([
    [1,2,3],
    [5,6,6]
])
print(f)
print(type(f))
print(type(f[0]))
print(type(f[0][0]))
print(f.dtype)
g = np.array(['1','2','3'])
print(g.dtype)
print(type(g[0]))
G = np.array(['1','2','3'],dtype=np.int32)
print("------------------")
print(G.dtype)
h = G.astype('<U11')#h = G.astype(np.str_)
print(h.dtype)
F = np.array([
    [1,2,3],
    [5,6,6]
])
print(f.shape)#元组类型
i = np.array([
    [np.arange(1,5),np.arange(6,10),np.arange(11,15)],
    [np.arange(2,6),np.arange(7,11),np.arange(16,20)]
])
print(i)
print(i.shape)
#索引
print(i[0])
print(i[0][1])
print(i[0][1][1])
print(i[0,1,1])

3.了解索引和一些主要类型

import numpy as np
i = np.array([
    [np.arange(1,5),np.arange(6,10),np.arange(11,15)],
    [np.arange(2,6),np.arange(7,11),np.arange(16,20)]
])
print(i)
print(i.shape)
#索引[0][1][1]===>[0,1,1]
print(i[0])
print(i[0][1])
print(i[0][1][1])
print(i[0,1,1])
#遍历
'''
print(i.shape)#元组(2,3,4)
for x in range(i.shape[0]):
    for y in range(i.shape[1]):
        for z in range(i.shape[2]):
            print(i[x][y][z],i[x,y,z])
'''
#numpy内置类型和自定义类型
'''
bool_   ---->1个字节         -------->b
int8    ---->1个字节有符号整形-------->i1
int16   ---->2个字节有符号整形-------->i2
int32   ---->4个字节有符号整形-------->i4
int64   ---->8个字节有符号整形-------->i8
uint8   ---->1个字节无符号整形-------->u1
uint16  ---->2个字节无符号整形-------->u2
uint32  ---->4个字节无符号整形-------->u4
uint64  ---->8个字节无符号整形-------->u8
float16 ----->2字节浮点型    -------->f2
float32 ----->4字节浮点型    -------->f4
float64 ----->8字节浮点型    -------->f8
complex64----->8字节复数型   -------->c8
complex128---->16字节复数型   -------->c16
str_    ----->取决字符长度和编码形式----> U字符数
'''
b = np.array([1,2,3,4],dtype=int)#int--->映射int32
print(b.dtype)
c =b.astype(float)#float---->映射float64
print(c.dtype)
d = b.astype(str)
print(d.dtype)#str----><U11

print('------------------------------')
#自定义类型
'''
<  小端字节序
=   系统默认,和处理器相关
>   大端字节序
'''
a = np.array([
    ('ABC',[1,2,3,4])
])
print(a)
print(a.dtype)
#索引取值
print(a[0])
print(a[0][1])
print(a[0][1][1])

每日感慨:听说又要去学校了,很好,但是要自律,加油~
祝大家学习顺利,加油~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值