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

最新文章

  1. hbase集群的启动,注意几个问题
  2. Radmin Server-3.5 完美绿色破解版(x32 x64通用) 第三版 + 单文件制作方法
  3. 移动互联网(APP)产品设计的经验分享【转】
  4. 通过源码看android系列之multidex库
  5. javaScript特效
  6. Accordion( 分类) 组件
  7. POST请求中参数以form data和request payload形式+清空数组方式
  8. 音频特征提取——librosa工具包使用
  9. opencv批处理提取图像的特征
  10. c/c++再学习:C++中public、protect、private的访问权限控制
  11. html/jsp导出pdf格式的几种方法(jsPDF,iText,wkhtmltopdf)
  12. 认识LDAP协议
  13. Hands-On Unity 2018 x 移动游戏开发教程
  14. Docker(十五)-Docker的数据管理(volume/bind mount/tmpfs)
  15. 微信小程序之下拉加载和上拉刷新
  16. j.u.c系列(09)---之并发工具类:CyclicBarrier
  17. About Apache Cordova
  18. 【树】Sum Root to Leaf Numbers
  19. python算法之冒泡排序
  20. Cocoa Touch(六):App运行机制 NSRunLoop, KVC, KVO, Notification, ARC

热门文章

  1. web前端 DOM 详解
  2. Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)
  3. [爬虫]scrapy框架
  4. 【树形dp】Bzoj3391 [Usaco2004 Dec]Tree Cutting网络破坏
  5. BZOJ_2068_[Poi2004]SZP_树形DP
  6. BZOJ_2820_YY的GCD_莫比乌斯反演
  7. stm32的NVIC是什么?
  8. 【坑】解决CentOS 7.1版本以上安装好zabbix 3.4 无法重启zabbix-server的问题
  9. OpenResty 在又拍云容器平台中的应用
  10. Protocol Buffers(1):序列化、编译与使用