首页
学习
活动
专区
圈层
工具
发布

70个NumPy练习:在Python下一举搞定机器学习矩阵运算

输入: 输出: 答案: 6.如何替换满足条件的元素而不影响原始数组? 难度:2 问题:将arr数组中的所有奇数替换为-1而不更改arr数组 输入: 输出: 答案: 7.如何重塑数组?...输入: 答案: 22.如何使用科学记数法(如1e10)漂亮地打印一个numpy数组?...难度:1 问题:使用科学记数法(如1e10)漂亮的打印数组rand_arr 输入: 输出: 答案: 23.如何限制numpy数组输出中打印元素的数量?...难度:1 问题:将python numpy数组a中打印的元素数量限制为最多6个。 输入: 输出: 答案: 24.如何在不截断的情况下打印完整的numpy数组?...难度:2 问题:创建一个长度为10的numpy数组,从5开始,在连续数字之间有一个3的步长。 答案: 69.如何填写不规则的numpy日期系列中的缺失日期? 难度:3 问题:给定一个不连续的日期数组。

23.7K42

数据科学家常犯的十大编程错误

我是资深的数据科学家,在StackOverflow中python编码排名前1%。今天我们来聊聊我经常看到的很多(初级)数据科学家常犯的10个编程错误。...4.Git用源代码提交数据 大多数人现在控制他们的代码的版本(如果你不这样做的话就会犯另一个错误! !见git)。为了共享数据,可能很容易将数据文件添加到版本控制中。...5.编写函数而不是DAGs 关于数据的讨论已经够多了,让我们来谈谈实际的代码吧!自从你学习编码时,首先要学习的是函数,数据科学代码主要由一系列运行的线性函数组成。这就导致了一些问题。...9.将数据保存为csv或pickle 备份数据,毕竟这是数据科学。就像函数和for循环、csv和pickle文件是常用的,但实际上它们也不是很好。CSV不包含模式,因此每个人都必须重新分析数字和日期。...jupyter notebooks助长了上面提到的很多不良的软件工程习惯,尤其是: 您试图将所有文件转储到一个目录中 你写的代码运行从上到下,而不是DAGs 您没有模块化您的代码 调试困难 代码和输出混合在一个文件中

90820
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    聊聊计算机的数字表示方法(下)

    定点数 我们知道计算机只能记录0和1,是无法记录小数点的,那么在4位计算机中我们如何存储和计算二进制数1和0.1呢?...,是利用科学计数法来表达的实数。...指数为什么使用移码而不是补码 还记得我们学习科学记数法时,两个使用科学记数法表示的数字进行计算,第一步就是对阶,即比较两个数指数的大小,如果不相等则通过移动指数较小数字的小数点位置使两个数的指数相等,然后再对小数部分进行加减计算...导致浮点数丢失精度的原因有很多,这里举两个例子: 1)10进制小数转二进制小数 我们知道10进制小数转二进制小数的方法是乘以2取整数,假设计算机可以存4位尾数。...我们把0.4转换为2进制来看看: 0.42=0.8 取0 0.82=1.6 取1 0.62=1.2 取1 0.22=0.4 取0 0.42=0.8 取0 0.82

    1.6K40

    《Java从入门到失业》第三章:基础语法及基本程序结构(3.7):运算符(小数二进制、科学记数法、IEEE754标准)

    还记得二进制转十进制的公式吗?...       我们知道,把一个十进制数的用科学记数法(scientific notation)可以表示为a*10n或者aEn,其中0<=|a|<10,n是自然数。...=1.01*2-3 我们可以把科学记数法看成由3个部分组成:符号部分、有效数字部分、指数部分,示意图如下: ?...在内存中,是采用科学计数法存放的,分别对应科学计数法的3个部分:符号部分、有效数字部分和指数部分,具体规定为: float:符号(1bit)、指数(8bit)、有效数字(23bit) double:符号...下面我们以单精度浮点数0.15625讲解浮点数的存储过程: 0.15625转化为二进制就是0.00101,然后将该数写成科学计数法: 0.15625 = 0.00101 = 1.01 * 2-3 有效数字部分是

    97020

    C++003-C++变量和数据类型2

    浮点数用默认记数法defaultfloat编写:这种表示方法尽可能用多的位数,这个位数包括小数点前及小数点后的位数。...默认记数法特点 1)保留有效位至多6位(有效位包括小数点前的位数,正如上文译文提到的),如 double z=1.1234567;的输出为1.12346。...截取数字的规则是四舍五入 2)删去无效位数(也算是第一点的进一步说明) double x=1.234596; cout<<x<<endl; 的输出为1.2346,而不是1.23460 3)适当情况下会用科学记数法...当 std::setprecision和std::ios::fixed一起使用时,则精度特指小数点后面保留的位数(注意和前面的区别,前面是包括小数点前面后面所有数字位数),如:上例中的 std::setprecision...型等等; 2、赋值表达式中,等号右边表达式的值的类型自动隐式地转换为左边变量的类型,并赋值给它; 3、函数调用时,将实参的值传递给形参,系统首先会自动隐式地把实参的值的类型转换为形参的类型,然后再赋值给形参

    54050

    软考:数值转换知识点详解

    在计算机科学中,二进制是最基本的数制,因为计算机内部使用二进制来存储和处理数据。然而,人类更习惯于使用十进制,而十六进制则因其简洁性在表示二进制数据时非常常用。...二进制转十六进制:每4位二进制数对应1位十六进制数,从二进制的最低位开始,每4位一组转换为对应的十六进制数。十六进制转二进制:与二进制转十六进制相反,每1位十六进制数对应4位二进制数。...Unicode 转换:可能需要转换为UTF-8或其他编码以适应不同的系统或网络传输。UTF-8 转换:UTF-8与其他编码(如UTF-16或UTF-32)之间的转换。...4.2 定点数和浮点数的表示定点数:小数点位置固定的数,通常用于表示整数或固定小数点的十进制数。浮点数:小数点位置不固定的数,使用科学记数法表示,如IEEE 754标准。...数值转换的编程实践9.1 在编程语言中实现数值转换的示例代码在编程实践中,数值转换是一个常见的任务。以下是一些示例代码,展示了如何在不同的编程语言中实现数值转换。

    56700

    关于 IEEE 754 浮点数一些设计细节的疑问解释

    ,二进制表示就是 -110.101,那么使用浮点数表示 6.625 的话,内存中实际存储的比特位是这个样子的: 其实可以观察到,浮点数的存储,本质上就是二进制的科学记数法:由一个有效数字(绿色部分),...其实 0 也是可以的,但是这样其实就浪费了一个位的精度了。 我们知道浮点数在内存中的表示,其实就是二进制的科学记数法。...0.365 * 10^5 => 3.65 * 10^4 二进制的科学记数法也是一样的,我们为了高效简介的表达,也像十进制的科学记数法一样,规定有效数字的整数部分不能是 0(因为前导 0 是无效数字...于是通过规定整数部分不为 0 ,加上二进制本身的性质,我们得到一个结论:二进制数的科学记数法中,有效数字的整数部分永远是 1。...对于浮点数,我们进行大小比较的时候,其实就是比较两个科学记数法表示的数字,所以第一步肯定是先比较他们的数量级。

    1.7K20

    c语言格式化输出

    %e 或 %E:输出浮点数,使用科学记数法表示。 %g 或 %G:根据浮点数的大小自动选择%f或%e格式,但不输出无意义的零。 %c:输出一个字符。 %s:输出一个字符串。...%p:输出一个指针的值,通常显示为十六进制格式。 此外,还有一些修饰符可以与格式说明符一起使用,以控制输出的格式: 数字(如%5d):指定字段的最小宽度。...如果输出的数据宽度小于这个值,则使用空格进行填充(除非使用了其他填充字符)。 .后跟数字(如%.2f):对于浮点数,指定小数点后保留的位数。 -:左对齐输出(默认情况下是右对齐)。...以避免类型不匹配的警告或错误。...在上面的示例中,我使用了(void*)str来确保兼容性。

    58210

    数字看做字符串的处理方法

    数字看做字符串的处理方法 /*科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[±][1-9]“.”[0-9]+E[±][0-9]+,即数字的整数部分 只有1位,小数部分至少有...现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都被保留。 输入描述: 每个输入包含1个测试用例,即一个以科学计数法表示的实数A。...该数字的存储长度不超过9999字节,且其指数的绝对值不超过9999。 输出描述: 对每个测试用例,在一行中按普通数字表示法输出A,并保证所有有效位都被保留,包括末尾的0。...输入例子: +1.23400E-03 输出例子: 0.00123400 */ // 分析:一看不知所措,二看不知所措,然后感觉还是要把这个输入科学记数法的数字当字符串处理 #include的情况, 以-1.2E+10为例说明 sum - (pos2 - pos1 - 1)含义, 这种情况

    13810

    数据科学家常遇到的10个错误

    不共享代码中引用的数据 数据科学需要代码和数据。因此,要使其他人能够重现您的结果,他们需要有权访问数据。虽然看起来很基础,但是很多人忘记了共享代码的数据。...编写函数而不是DAG 有足够的数据,接下来谈谈实际的代码!由于在学习代码时首先要学习的内容之一就是函数,因此数据科学代码通常被组织为一系列线性运行的函数。这可能会导致几个问题。...不编写单元测试 随着数据,参数或用户输入的更改,您的代码可能会中断,有时您可能不会注意到。这可能会导致错误的输出,如果有人根据您的输出做出决策,那么错误的数据将导致错误的决策!...将数据另存为csv或pickle 回到数据,毕竟是数据科学。就像函数和for循环一样,通常使用CSV和pickle文件,但它们实际上并不是很好。CSV不包含架构,因此每个人都必须再次解析数字和日期。...Jupyter notebooks 促进了上述许多不良的软件工程习惯,尤其是: 很容易将所有文件存储到一个目录中 编写的代码从上至下而不是DAG运行 没有模块化代码 调试困难 代码和输出混合在一个文件中

    87320

    收藏 | 10个数据科学家常犯的编程错误(附解决方案)

    以下是我经常看到的10大常见错误,本文将为你相关解决方案: 不共享代码中引用的数据 对无法访问的路径进行硬编码 将代码与数据混合 在Git中和源码一起提交数据 编写函数而不是DAG 写for循环 不编写单元测试...不共享代码中引用的数据 数据科学需要代码和数据。因此,为了让别人可以复现你的结果,他们需要能够访问到数据。道理很简单,但是很多人忘记分享他们代码中的数据。...编写函数而不是DAG 关于数据部分已经够多了,现在来谈一谈实际的代码!在学习编程时最先学习的内容之一就是函数,数据科学代码通常由一系列线性运行的函数组成。...不编写单元测试 随着数据、参数或用户输入的改变,你的代码可能会出现问题,有时你并没有注意到。这可能会导致糟糕的输出结果,而如果有人基于你的输出做出决策,那么糟糕的数据将会导致糟糕的决策。...CSV文件不包含纲要(schema),因此每个人都必须再次解析数字和日期。Pickle文件解决了这个问题,但是它只能在python中使用,并且不能压缩。两者都不是存储大型数据集的最优格式。

    93630

    独家 | 10个数据科学家常犯的编程错误(附解决方案)

    以下是我经常看到的10大常见错误,本文将为你相关解决方案: 不共享代码中引用的数据 对无法访问的路径进行硬编码 将代码与数据混合 在Git中和源码一起提交数据 编写函数而不是DAG 写for循环 不编写单元测试...不共享代码中引用的数据 数据科学需要代码和数据。因此,为了让别人可以复现你的结果,他们需要能够访问到数据。道理很简单,但是很多人忘记分享他们代码中的数据。...不编写单元测试 随着数据、参数或用户输入的改变,你的代码可能会出现问题,有时你并没有注意到。这可能会导致糟糕的输出结果,而如果有人基于你的输出做出决策,那么糟糕的数据将会导致糟糕的决策。...CSV文件不包含纲要(schema),因此每个人都必须再次解析数字和日期。Pickle文件解决了这个问题,但是它只能在python中使用,并且不能压缩。...jupyter notebook助长了上述提到的许多不良编程习惯,尤其是: 把所有文件保存在一个目录中 编写从上至下运行的代码,而不是DAG 没有对代码进行模块化 很难调试 代码和输出混在一个文件中 没有很好的版本控制

    93920

    数据科学家常犯的 15 个编码错误

    希望文中的观点能给读者带来一些启发。 编写应用于数据科学项目的 Python 代码,并按照自己的期望运行起来,可能没有什么困难。...在项目周期不超过一天的情况下,我也会时不时地使用一下 Notebooks,这可能是我想到的唯一使用它的场景了。...代码中频繁大量地使用幻数,可能会遇到难以追踪的问题。 下面的代码示例中,我们在乘法计算时简单地使用了一个未分配变量的数字,而且没有任何上下文来解释这个数字的含义。...下面的一段示例代码尝试读取目录中的 CSV 文件。在这种情况下你可能会说,不使用列表推导式也挺优雅呀,没有什么不妥。...不要只为项目创建一个冗长的执行脚本。在代码入口文件开头定义大量的类或函数是不推荐的做法,因为这样做代码很难阅读和维护。相反,要根据代码功能创建相应的模块(包)。

    55420

    小小的 float,藏着大大的学问

    十进制数转二进制采用的是除 2 取余法,比如数字 8 转二进制的过程如下图: ? 接着,我们看看「整数类型」的数字在计算机的存储方式,这其实很简单,也很直观,就是将十进制的数字转换成二进制即可。...---- 十进制小数与二进制的转换 好了,整数十进制转二进制我们知道了,接下来看看小数是怎么转二进制的,小数部分的转换不同于整数部分,它采用的是乘 2 取整法,将十进制中的小数部分乘以 2 作为二进制的一位...然而,计算机并不是这样存储的小数的,计算机存储小数的采用的是浮点数,名字里的「浮点」表示小数点是可以浮动的,比如 1000.101 这个二进制数,可以表示成 1.000101 x 2^(-3),类似于数学上的科学记数法...既然提到了科学计数法,我再帮大家复习一下,比如有个很大的十进制数 1230000,我们可以也可以表示成 1.23 x 10^6,这种方式就称为科学记数法,该方法在小数点左边只有一个数字,而且把这种整数部分没有前导...0 的数字称为规格化,比如 1.0 x 10^(-9) 是规格化的科学记数法,而 0.1 x 10^(-9) 和 10.0 x 10^(-9) 就不是了。

    2K20

    分享 13 个有用的 JavaScript 片段,提升你的工作效率

    在这篇文章中,我将分享我发现它们有用的 15 个 JavaScript 代码片段。 1. 不循环地重复字符串 此 JS 片段将展示如何在不使用任何循环的情况下重复字符串。...简短的Console.log 厌倦了一次又一次地编写 console.log() 吗?不用担心这个片段会为您节省大量编写长 console.log() 的时间。...数字到数字数组 此代码片段对于将数字转换为数字数组非常有用。使用带映射的扩展运算符,我们可以在一秒钟内完成此操作。...数字转二进制 此代码片段将使用 toString() 方法将数字简单地转换为二进制。看一下下面的代码示例。...数组到 CSV CSV 是当今广泛使用的电子表格,您可以使用如下所示的简单代码片段将数组转换为 CSV。

    54130

    java整型转换成字符串_java整型转换成字符串

    2、编写一个 Java 程序,在程序中通过键盘输入常用的数据,包括字符串、 整数和…… String s=”10″; //字符串转换成数值型 a=Byte.parseByte(s); b=Short.parseShort...(s);//调用 Short 类的 parseShort 方法把 s 转换成短 整型 c=Integer…… 本文由我司收集整编,推荐下载,如有疑问,请与我司联系 在 Java 中,JSON 解析器自动将字符串转换为数字...在 Java 中,JSON 解析器自动将字符串转换为数字…… (n); String s=String.valueOf(n); //把正整数n转换成字符串 number=s.length(); //得到整数的位数...08-16 16:34:03| 分类: |字号 订阅 JAVA 字符串转日期或日期转字符串(转) 文章中,用的 API 是 SimpleDate…… format(Locale locale, String...本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    7.3K90

    免费MCP: JSON 转 Excel MCP

    json_to_excel_mcp_from_url:将提供的 URL 中的 JSON 文件(.json 格式)转换为 CSV 格式字符串。...JSON格式要求可在 JSON格式要求 获取,验证器可在 JSON 转 Excel Web 应用 使用。 如果 JSON 是对象数组,每个对象将被视为 CSV 中的一行。...": false, "Courses": ["数学", "科学"] } json_to_excel_mcp_from_url 将提供的 URL 中的 JSON 数据转换为 Excel 数据。...如果 JSON 是对象数组,每个对象将被视为 CSV 中的一行。 如果 JSON 是单个对象,它将被转换为包含键值对的 CSV。 此工具返回可轻松转换/导入到 Excel 的 CSV 格式数据。...数据类型处理 API 自动处理 JSON 中的不同数据类型: 数字:转换为 CSV 中的数值 布尔值:转换为 ‘true’/‘false’ 字符串 字符串:必要时进行转义和引用 数组:转换为 JSON.stringify

    8410

    0.1+0.2=0.30000000000000004问题的探究

    其次这几乎出现在很多的编程语言中:C/C++,Java,Javascript中,准确的说:“使用了IEEE 754浮点数格式”来存储浮点类型(float 32,double 64)的任何编程语言都有这个问题...简要介绍下IEEE 754浮点格式:它用科学记数法以底数为2的小数来表示浮点数。IEEE浮点数(共32位)用1位表示数字符号,用8为表示指数,用23为来表示尾数(即小数部分)。...因为科学记数法有很多种方式来表示给定的数字,所以要规范化浮点数,以便用底数为2并且小数点左边为1的小数来表示(注意是二进制的,所以只要不为0则一定有一位为1),按照需要调节指数就可以得到所需的数字。...例如:十进制的1.25 => 二进制的1.01 => 则存储时指数为0、尾数为1.01、符号位为0.(十进制转二进制) 回到开头,为什么“0.1+0.2=0.30000000000000004”?...浮点数中的特殊数字 除了一般范围内的数字之外,还有一些特殊数字:无穷大、负无穷大、-0和NaN(“代表不是数字”)。

    79510
    领券