dtype(数据类型)是一个特殊的对象,它含有ndarray将一块内存解释为特定数据类型所需的信息:

arr1 = np.array([1, 2, 3,],dtype = np.float64)arr2 = np.array([1, 2, 3,],dtype = np.float32)
arr1.dtype

out:

dtype('float64')
arr2.dtype

out:

dtype('float32')

你可以通过ndarray的astype方法明确地将一个数组从一个dtype转换成另一个dtype:

arr = np.array([1, 2, 3, 4, 5, 6, 7])arr.dtype

out:

dtype('float32')

float_arr = arr.astype(np.float64)float_arr.dtype

out:

dtype('float64')

在本例中,整数被转换成了浮点数。如果将浮点数转换成整数,则小数部分将会被截取删除:

arr = np.array([3.7, -1.2, -2.6, 0.5, 12.9, 10.1])arr

out:

array([ 3.7, -1.2, -2.6,  0.5, 12.9, 10.1])
arr.astype(np.int32)

out:

array([ 3, -1, -2,  0, 12, 10])

如果某字符串数组表示的全是数字,也可以用astype将其转换为数值形式

numeric_strings = np.array(['1.25', '-9.6', '42'], dtype=np.string_)
numeric_strings.astype(float)

out:

array([ 1.25, -9.6 , 42.  ])

注意:使用numpy.string_类型时,一定要小心,因为NumPy的字符串数据是大小固定的,发生截取时,不会发出警告。pandas提供了更多非数值数据的便利的处理方法。

如果转换过程因为某种原因而失败了(比如某个不能被转换为float64的字符串),就会引发一个ValueError。这里,我比较懒,写的是float而不是np.float64;NumPy很聪明,它会将Python类型映射到等价的dtype上。

数组的dtype还有另一个属性:

int_array = np.arange(10)calibers = np.array([.22, .270, .357, .380, .44, .50], dtype=np.float64)int_array.astype(calibers.dtype)

out:

array([0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])

你还可以用简洁的类型代码来表示dtype:

empty_uint32 = np.empty(8, dtype='u4')empty_uint32

out:

array([1, 2, 3, 4, 5, 6, 7, 8], dtype=uint32)

调用astype总会创建一个新的数组(一个数据的备份),即使新的dtype与旧的dtype相同。

下期我们将分享Numpy数组的运算,如果喜欢请点赞收藏,您的支持是我最大的动力,谢谢大家,共同进步。

从数据类型 nvarchar 转换为 numeric 时出错_Python数据分析类库系列Numpy之ndarray的数据类型...相关推荐

  1. 从数据类型 nvarchar 转换为 numeric 时出错_JS入门篇(三):javascript的数据类型详解...

    JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Undefined.Null.Boolean.Number.String. 复杂数据类型:Object. (1)U ...

  2. 从数据类型 varchar 转换为 numeric 时出错.

    如果说你的数据库字段是varchar,但是存储的数据是数值,在出报表时需要转成int或numeric时,无论怎么样都报错. 错误信息: 消息 8114,级别 16,状态 5,第 1 行 从数据类型 v ...

  3. 从数据类型 varchar 转换为 numeric 时出错

    概述 在SQL server环境查询的时候,出现,从数据类型 varchar 转换为 numeric 时出错. 报错图片 先说解决办法 Select cast(字段 as 数据类型) from 表名 ...

  4. 从数据类型 nvarchar 转换为 bigint 时出错_JavaScript数据类型的一些细节点

    ▲ 点击上方蓝字关注我 ▲文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 目录JS数据类型的一些细节点0 / JS 中的数据类型的一些细节点(1)JS ...

  5. nvarchar转换为numeric时出错_Oracle转换Postgres

    1.前提 首先需要对Oracle和PostgreSQL的SQL都比较熟悉.对其理解的越详细就越具有优势,本文帮助读者迅速理解这两类SQL的区别是什么. 如果因ACS/pg而需要将Oracle移植到PG ...

  6. python布尔系列_python数据分析类库系列-Numpy之布尔型索引

    我们了解了如何使用索引进行切片以及选择 ndarray 元素.当我们知道要选择的元素的确切索引时,这些方法很有用.但是,在很多情况下,我们不知道要选择的元素的索引.例如,假设有一个 10,000 x ...

  7. python转置_python数据分析类库系列Numpy之 数组转置和轴对换

    转置是重塑的一种特殊形式,它返回的是源数据的视图(不会进行任何复制操作).数组不仅有transpose方法,还有一个特殊的T属性 arr = np.arange(15).reshape((3, 5)) ...

  8. numeric转换varchar_将数据类型varchar转换为numeric时选择失败

    我的选择是从 table 1 插入到 table 2 ,当我运行它时,我收到以下消息: 消息8114,级别16,状态5,行5错误将数据类型varchar转换为数字 . 我从varchar转换为nume ...

  9. SQL “varchar转换为numeric时出错” 的小插曲

    工作小插曲 今天在做数据分析时出现了一个小问题:在统计金额总数时的问题. 根据我从业这么多天的 "资深经验" ,一般出现这个错误是由两个原因. 第一种,有空值.这应该是varcha ...

最新文章

  1. OpenCV学习笔记(12)——OpenCV中的轮廓
  2. 计算机视觉进展二十年 (1995~2015)
  3. Python学习记录day4
  4. RestTemplate的三种使用方式
  5. kotlin学习之伴生对象(十五)
  6. sublime 无法下载插件解决办法(亲测有效)
  7. 利用 Cache_Lite代替codeigniter中的cache功能
  8. 「WC 2019」数树
  9. 虚拟试衣 原理与应用
  10. 2750 心系南方灾区
  11. 为activity设置主题theme
  12. pdo mysql num rows_PDO参数说明
  13. 分布式事务-常见解决方案
  14. HTML实现圣诞树(HTML+CSS+JavaScript)
  15. How to download dynamically loaded content using python
  16. 一套效果图适配(Android和IOS)全尺寸和标注规范-(一)(750x1334)
  17. Windows口袋系统(WinToGo)
  18. Git Cheat Sheet——Git的常用命令和最佳做法
  19. OKR(Objectives and Key Results)学习心得
  20. 计算机任务计划命令,从菜鸟到高手,CMD命令行计划任务设置(上):at

热门文章

  1. 获取指定某一天的00:00—23:59
  2. Mac 下安装并配置 Tomcat
  3. Exchannge 2013数据库副本频繁自动切换
  4. ARKit文档翻译之AROrientationTrackingConfiguration类
  5. TODO:Go语言goroutine和channel使用
  6. VIJOS 1052贾老二算算术 (高斯消元)
  7. FreeMarkerConfigurer使用TemplateDirectiveModel时获取request、session
  8. innodb_memcache之配置
  9. ADSL拨号中出现的错误代码
  10. jackson json 转换Bean, Bean 里没有对应的值 jackson Unrecognized field