好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

python之Numpy和Pandas的使用介绍

最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,下面这篇文章主要给大家介绍了关于python学习教程之Numpy和Pandas使用的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴。

import numpy as np
#创建Numpy
p1 = np.array([1, 2, 3])
print p1
print p1.dtype 
[1 2 3]
int64 
#求平均值
print p1.mean() 
#求标准差
print p1.std() 
#求和、求最大值、求最小值
print p1.sum()
print p1.max()
print p1.min() 
6
3
1 
#求最大值所在位置
print p1.argmax() 
p1 = np.array([1, 2, 3])
p2 = np.array([2, 5, 7]) 
#向量相加,各个元素相加
print p1 + p2 
#向量乘以1个常数
print p1 * 2 
#向量相减
print p1 - p2 
#向量相乘,各个元素之间做运算
print p1 * p2 
#向量与一个常数比较
print p1 > 2 
a = np.array([1, 2, 3, 4, 5])
print a 
b = a > 2
print b 
a = np.array([1, 2, 3, 4])
b = a
a += np.array([1, 1, 1, 1])
print b 
a = np.array([1, 2, 3, 4])
b = a
a = a + np.array([1, 1, 1, 1])
print b 
l1 = [1, 2, 3, 5]
l2 = l1[0:2]
l2[0] = 5
print l2
print l1 
[5, 2]
[1, 2, 3, 5] 
p1 = np.array([1, 2, 3, 5])
p2 = p1[0:2]
p2[0] = 5
print p1
print p2 
[5 2 3 5]
[5 2] 
p1 = np.array([[1, 2, 3], [7, 8, 9], [2, 4, 5]])
#获取其中一维数组
print p1[0] 
#获取其中一个元素,注意它可以是p1[0, 1],也可以p1[0][1]
print p1[0, 1]
print p1[0][1] 
2
2 
#求和是求所有元素的和
print p1.sum() 
41
[10 14 17] 
#获取每一列的结果
print p1.sum(axis=0) 
#获取每一行的结果
print p1.sum(axis=1) 
#mean函数也可以设置axis
print p1.mean(axis=0) 
import pandas as pd
pd1 = pd.Series([1, 2, 3])
print pd1 
0 1
1 2
2 3
dtype: int64 
#也可以求和和标准偏差
print pd1.sum()
print pd1.std() 
6
1.0 
p1 = pd.Series(
 [1, 2, 3],
 index = ['a', 'b', 'c']
)
print p1 
a 1
b 2
c 3
dtype: int64 
p1 = pd.DataFrame({
 'name': ['Jack', 'Lucy', 'Coke'],
 'age': [18, 19, 21]
})
print p1 
 age name
0 18 Jack
1 19 Lucy
2 21 Coke 
#获取name一列
print p1['name'] 
0 Jack
1 Lucy
2 Coke
Name: name, dtype: object 
#获取姓名的第一个
print p1['name'][0] 
#使用p1[0]不能获取第一行,但是可以使用iloc
print p1.iloc[0] 
age 18
name Jack
Name: 0, dtype: object 
def func(value):
 return value * 3
pd1 = pd.Series([1, 2, 5]) 
0  3
1  6
2 15
dtype: int64 
pd2 = pd.DataFrame({
 'name': ['Jack', 'Lucy', 'Coke'],
 'age': [18, 19, 21]
})
print pd2.apply(func) 
 age   name
0 54 JackJackJack
1 57 LucyLucyLucy
2 63 CokeCokeCoke 
pd2 = pd.DataFrame({
 'weight': [120, 130, 150],
 'age': [18, 19, 21]
}) 
0 138
1 149
2 171
dtype: int64 
#计算每一行的值
print pd2.sum(axis='columns') 
0 138
1 149
2 171
dtype: int64 
#计算每一列的值
print pd2.sum(axis='index') 
age  58
weight 400
dtype: int64 
pd2 = pd.DataFrame({
 'name': ['Jack', 'Lucy', 'Coke', 'Pol', 'Tude'],
 'age': [18, 19, 21, 21, 19]
})
#以年龄分组
print pd2.groupby('age').groups 
pd1 = pd.Series(
 [1, 2, 3],
 index = ['a', 'b', 'c']
)
pd2 = pd.Series(
 [1, 2, 3],
 index = ['a', 'c', 'd']
) 
a 2.0
b NaN
c 5.0
d NaN
dtype: float64 
a 2.0
b 2.0
c 5.0
d 3.0
dtype: float64 

同样,它可以应用在Pandas的dataFrame中,只是需要注意列与行都要对应起来。

总结

这一周学习了优达学城上分析基础的课程,使用的是Numpy与Pandas。对于Numpy,以前在Tensorflow中用过,但是很不明白,这次学习之后,才知道那么简单,算是有一定的收获。

以上就是python之Numpy和Pandas的使用介绍的详细内容,更多请关注Gxl网其它相关文章!

查看更多关于python之Numpy和Pandas的使用介绍的详细内容...

  阅读:51次