Python数据分析

Python数据分析 知识量:13 - 56 - 232

2.8 数据预处理><

类型转换- 2.8.1 -

不同的数据类型可以进行的计算和操作是不同的,有时需要对数组元素进行数据类型转换。在NumPy数组中,可以使用astype()函数来实现,其参数为要转换成的数据类型。

import numpy as np
arr=np.arange(10)
print(arr)
print(arr.dtype)
arr=arr.astype(np.float64)
print(arr)
print(arr.dtype)
arr=arr.astype(np.string_)
print(arr)
print(arr.dtype)

运行结果为:

[0 1 2 3 4 5 6 7 8 9]
int32
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
float64
[b'0.0' b'1.0' b'2.0' b'3.0' b'4.0' b'5.0' b'6.0' b'7.0' b'8.0' b'9.0']
|S32

处理缺失值- 2.8.2 -

在处理数据时,有时会遇到缺失值。总的处理思路是首先找出缺失值,然后对缺失值进行填充。

NumPy数组中缺失值使用np.nan表示,可以使用isnan()函数进行判断,如果是缺失值就会返回True;否则返回False。

import numpy as np
arr=np.array([1,4,6,np.nan,9,np.nan,15])
print(arr)
print(np.isnan(arr))  # 判断缺失值
arr[np.isnan(arr)]=0  # 缺失值替换为0
print(arr)

运行结果为:

[ 1.  4.  6. nan  9. nan 15.]
[False False False  True False  True False]
[ 1.  4.  6.  0.  9.  0. 15.]

处理重复值- 2.8.3 -

可以使用unique()函数处理数组重复元素,会得到一个没有重复值的数组。

import numpy as np
arr=np.array([1,4,6,5,4,1])
print(arr)
print(np.unique(arr))

运行结果为:

[1 4 6 5 4 1]
[1 4 5 6]

unique()函数不会改变原数组,要想保存一个没有重复值的数组,可以将函数返回结果赋值给一个新的变量。