numpy操作

Posted ttyb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy操作相关的知识,希望对你有一定的参考价值。

python中使用了numpy的一些操作,特此记录下来:

生成矩阵,替换值

import numpy as np
# 生成一行10列的矩阵
dataset = np.zeros((1, 10))
# 将位置为2的值替换为1
dataset.itemset(2, 1)

得到结果为:

[[0. 0. 1. 0. 0. 0. 0. 0. 0. 0.]]

where查找

import numpy as np
dataset = np.array([1, 2, 3, 2, 3, 4, 4, 5, 6])
# 找到值等于2的值的下标
dataset = np.where(dataset == 2)
print(dataset)

dataset = np.array([1, 2, 3, 2, 3, 4, 4, 5, 6])
index = np.argwhere(dataset == 2)
print(index)

得到结果为:

(array([1, 3], dtype=int64),)

[[1]
 [3]]

增加一行或一列

import numpy as np
dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
# 增加行
a = np.row_stack((dataset, [8,9,10]))
print(a)

# 增加列
b = np.column_stack((dataset, [8,9,10]))
print(b)

得到结果为:

[[ 1  2  3]
 [ 2  3  4]
 [ 4  5  6]
 [ 8  9 10]]
 
[[ 1  2  3  8]
 [ 2  3  4  9]
 [ 4  5  6 10]]

按行合并,按列合并

import numpy as np
dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
# 按行合并
dataset = np.append(dataset, [[8, 9, 10]], axis=0)
print(dataset)

dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
# 按列合并
dataset = np.append(dataset, [[8], [9], [10]], axis=1)
print(dataset)

得到结果为:

[[ 1  2  3]
 [ 2  3  4]
 [ 4  5  6]
 [ 8  9 10]]
 
[[ 1  2  3  8]
 [ 2  3  4  9]
 [ 4  5  6 10]]

删除行、列

import numpy as np
dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
# 删除第1、2行(0、1、2)
dataset = np.delete(dataset, [1, 2], axis=0)
print(dataset)

dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
# 删除第1、2列(0、1、2)
dataset = np.delete(dataset, [1, 2], axis=1)
print(dataset)

得到结果为:

[[1 2 3]]

[[1]
 [2]
 [4]]

ndarray转dataframe

import numpy as np
import pandas as pd

dataset = np.array([[1, 2, 3], [2, 3, 4], [4, 5, 6]])
dataframe = pd.DataFrame(dataset, index=("row1", "row2", "row3"), columns=("col1", "col2", "col3"))
print(dataframe)

得到结果为:

      col1  col2  col3
row1     1     2     3
row2     2     3     4
row3     4     5     6

以上是关于numpy操作的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

'numpy.ndarray':对象不可调用错误

乐哥学AI_Python:Numpy索引,切片,常用函数

对数据进行去均值并转换为 numpy 数组