index函数

Python报错:TypeError: data type not understood

坚强是说给别人听的谎言 提交于 2019-12-11 20:26:33
K-Means聚类算法 def randCent(dataSet, k): m, n = dataSet.shape # numpy中的shape函数的返回一个矩阵的规模,即是几行几列 centrodids = np.zeros(k, n) for i in range(k): index = int(np.random.uniform(0, m)) # centrodids[i, :] = dataSet[index, :] return centrodids 报错TypeError: data type not understood 错误在第三行centrodids = np.zeros(k, n) 原来numpy.zeros的用法用错了 numpy.zeros(shape,dtype = float,order ='C' ) 返回给定形状和类型的新数组,并用零填充。 shape:整数或者整数元组例如:(2,1) dtype:数据类型,可选 order:{‘C’,‘F’}可选,默认C 所以应该吧第三行改成centrodids = np.zeros((k, n)) 来源: https://www.cnblogs.com/WQiong/p/12024889.html

数组常用方法

旧城冷巷雨未停 提交于 2019-12-10 15:59:10
1.push() 从后面添加元素,返回值为添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.push(5)) // [1,2,3,4,5,5] 2.pop() 从后面删除元素,只能是一个,返回值是删除的元素 let arr = [1,2,3,4,5] console.log(arr.pop()) // 5 console.log(arr) //[1,2,3,4] 3.shift() 从前面删除元素,只能删除一个 返回值是删除的元素 let arr = [1,2,3,4,5] console.log(arr.shift()) // 1 console.log(arr) // [2,3,4,5] 4.unshift() 从前面添加元素, 返回值是添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.unshift(2)) // 6 console.log(arr) //[2,1,2,3,4,5] 5.splice(i,n,key) 删除从i(索引值)开始之后的那个元素。返回值是删除的元素。参数为空则表示截取一个空数组,元数组不变。i为整数(0 正数 负数)负数表示从数组的后边往前数,-1表示最后一个;n为正数和0表示要剪切的长度,0和负数表示不删除。key表示剪切位置新添加的数据,长度不限

python函数

此生再无相见时 提交于 2019-12-10 10:28:01
1.可变长参数:在调用函数时,实参值得个数不固定 实参的形式有:位置实参和关键字实参 形参的解决方案为 *,** 位置形参例子:   def foo(x,y,*args): print(x,y) print(*args) foo(1,2,*[3,4,5,6,7]) #先将位置打散(1,2,3,4,5,6,7)在一一对应 关键字形参例子,会被**保存成字典的形式 def foo(x,y,**kwargs): print(x,y) print(kwargs) foo(x=1,**{'y':2,'a':3,'b':4,'c':5}) #先将位置打散在一一对应 #foo(x=1,y=2,a=3,b=4,c=5) 2.函数对象函数是第一类对象:指的是函数可以当数据传递 1.可以被引用 x=1,y=x   def func(x,y): print(x,y) f=func f(1,2) 2.可以当做函数的参数传入 def foo(): print('aaa') def bar(func) print(func) bar(foo) 3.可以当做函数的返回值 def foo(): print('aaa') def bar(): return foo f=bar() f() 4.可以当做容器类型的元素 def foo(): print('aaa') def bar(): return foo l=

Python爬虫数据处理

≯℡__Kan透↙ 提交于 2019-12-10 02:34:06
一、首先理解下面几个函数 设置变量 length()函数 char_length() replace() 函数 max() 函数 1.1、设置变量 set @变量名=值 set @address='中国-山东省-聊城市-莘县'; select @address 1.2 、length()函数 char_length()函数区别 select length('a') ,char_length('a') ,length('中') ,char_length('中') 1.3、 replace() 函数 和length()函数组合 set @address='中国-山东省-聊城市-莘县'; select @address ,replace(@address,'-','') as address_1 ,length(@address) as len_add1 ,length(replace(@address,'-','')) as len_add2 ,length(@address)-length(replace(@address,'-','')) as _count etl清洗字段时候有明显分割符的如何确定新的数据表增加几个分割出的字段 计算出com_industry中最多有几个 - 符 以便确定增加几个字段 最大值+1 为可以拆分成的字段数 此表为3 因此可以拆分出4个行业字段

DELPHI 数据库控件心得

自古美人都是妖i 提交于 2019-12-10 01:16:09
TField 对象的SetText和GetText事件处理函数 使用TField对象的SetText和GetText事件处理函数可方便的解决字段的代码与代码所对应值的显示问题 TSimpleDataset/TClientDataset对象的Aggregation 使用TDataset对象的Aggregate属性可以来计算客户端数据集中数据的总计数值、平均值或是计算最大值和最小值。 使用TBookMark来标记记录书签, 访问数据集中的数据 通过使用TBookMark以及TDataset对象的 BookMark 属性, 要以为当前的纪录设置书签, 例 var bk:TBookMark; begin bk:=ds.GetBookMark; //设置书签 .... ds.GoToBookMark(bk);//回到原来的纪录 ds.FreeBookMark(bk);//释放内存 end; Locate 与 Lookup 区别: Locate找到查寻的数据后,它会把目前的记录位置移动到找到的这笔数据上 Lookup找到查寻的数据后,它会回传找到的数据的特定字段数值,却不会移动目前的记录位置。 Lookup方法的第三个参数则是指定当Lookup找到欲查寻的数据之后,要回传这笔数据的那些字段数值。如果开发人员想要Lookup回传多个字段数值,那么每一个字段也是以分号分隔。

(九)Flask 学习 —— 分页

荒凉一梦 提交于 2019-12-09 12:36:49
分页 回顾 在前面的章节( 关注者,联系人和好友 ),我们已经完成了所有支持 “关注者” 功能的数据库的修改。今天我们将会让我们应用程序接受用户的真实数据。我们将要告别伪造数据的时候! 我们接下来讲述的正是我们上一章离开的地方,所以你可能要确保应用程序 microblog 正确地安装和工作。 提交博客文章 让我们先以简单的内容开始,主页应该有一个提交新的 blog 的表单。 首先我们定义一个单字段的表单对象(文件 app/forms.py ): class PostForm(Form): post = StringField('post', validators=[DataRequired()]) 接着,我们把表单添加到模板中(文件 app/templates/index.html ): <!-- extend base layout --> {% extends "base.html" %} {% block content %} <h1>Hi, {{g.user.nickname}}!</h1> <form action="" method="post" name="post"> {{form.hidden_tag()}} <table> <tr> <td>Say something:</td> <td>{{ form.post(size = 30, maxlength =

《利用python进行数据分析》读书笔记--第五章 pandas入门

只谈情不闲聊 提交于 2019-12-09 11:29:41
pandas是本书后续内容的首选库。pandas可以满足以下需求: 具备按轴自动或显式数据对齐功能的数据结构。这可以防止许多由于数据未对齐以及来自不同数据源(索引方式不同)的数据而导致的常见错误。. 集成时间序列功能 既能处理时间序列数据也能处理非时间序列数据的数据结构 数学运算和简约(比如对某个轴求和)可以根据不同的元数据(轴编号)执行 灵活处理缺失数据 合并及其他出现在常见数据库(例如基于SQL的)中的关系型运算 1、pandas数据结构介绍 两个数据结构:Series和DataFrame。Series是一种类似于以为NumPy数组的对象,它由一组数据(各种NumPy数据类型)和与之相关的一组数据标签(即索引)组成的。可以用index和values分别规定索引和值。如果不规定索引,会自动创建 0 到 N-1 索引。 #-*- encoding:utf-8 -*- import numpy as np import pandas as pd from pandas import Series,DataFrame #Series可以设置index,有点像字典,用index索引 obj = Series([1,2,3],index=['a','b','c']) #print obj['a'] #也就是说,可以用字典直接创建Series dic = dict(key = ['a','b

爬虫实战-链家北京房租数据

笑着哭i 提交于 2019-12-08 22:28:27
爬虫实战-链家北京房租数据 本篇是对 恋习Python 发布的原创文章 《北京房租大涨?6个维度,数万条数据帮你揭穿》 中涉及的代码部分的解读。 < 在复现原文代码时,出现了一些报错,在本文中已进行了更改 > 爬虫实战-链家北京房租数据 1. 数据获取部分 1.1 导入包 1.2 获取某市区域的所有链接 1.3 通过获取某一区域的页数,来拼接某一页的链接 1.4 获取某一区域某一页的详细房租信息 1.5 定义主函数及设置初始输入参数 2. 数据清洗预览 3. 数据分析可视化 3.1 导入包 3.2 子图一:北京路段_房屋均价分布图 3.3 子图二:北京主要路段房屋数量 3.4 将两个子图结合起来,Overlap叠加不同类型图表输出 1. 数据获取部分 把目前市场占有率最高的房屋中介公司为目标,来获取北京、上海两大城市的租房信息。 (目标链接: https://bj.lianjia.com/zufang/ ) 整体思路是: 先爬取每个区域的url和名称,跟主url拼接成一个完整的url,循环url列表,依次爬取每个区域的租房信息。 再爬每个区域的租房信息时,找到最大的页码,遍历页码,依次爬取每一页的二手房信息。 这里用到的几个爬虫Python包: requests: 就是用来请求对链家网进行访问的包 lxml: 解析网页,用xpath表达式与正则表达式一起来获取网页信息

索引,索引的建立、修改、删除

China☆狼群 提交于 2019-12-07 16:45:59
索引 索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。建立索引是一项技术性要求高的工作。一般在数据库设计阶段的与数据库结构一道考虑。应用系统的性能直接与索引的合理直接有关。下面给出建立索引的方法和要点。 §3.5.1 建立索引 1. CREATE INDEX命令语法: CREATE INDEX CREATE [unique] INDEX [user.]index ON [user.]table (column [ASC | DESC] [,column [ASC | DESC] ] ... ) [CLUSTER [scheam.]cluster] [INITRANS n] [MAXTRANS n] [PCTFREE n] [STORAGE storage] [TABLESPACE tablespace] [NO SORT] Advanced 其中: schema ORACLE模式,缺省即为当前帐户 index 索引名 table 创建索引的基表名 column 基表中的列名,一个索引最多有16列,long列、long raw 列不能建索引列 DESC、ASC 缺省为ASC即升序排序 CLUSTER 指定一个聚簇(Hash cluster不能建索引) INITRANS、MAXTRANS 指定初始和最大事务入口数 Tablespace 表空间名

JS 的5个不良编码习惯(转)

六月ゝ 毕业季﹏ 提交于 2019-12-06 16:24:57
原文链接 在阅读JavaScript代码时,你是否有过这种感觉 你几乎不明白代码的作用? 代码使用了很多 JavaScript 技巧? 命名和编码风格太过随意? 这些都是不良编码习惯的征兆。 在这篇文章中,我描述了JavaScript中常见的5种不良编码习惯。重要的是,本文会给出一些可行的建议,如何的摆脱摆脱这些习惯。 1.不要使用隐式类型转换 JavaScript是一种松散类型的语言。 如果使用得当,这是一个好处,因为它给你带来了灵活性。 大多数运算符 + - * / == (不包括 === )在处理不同类型的操作数时会进行隐式转换。 语句 if(condition){...} , while(condition){...} 隐式地将条件转换为布尔值。 下面的示例依赖于类型的隐式转换,这种有时候会让人感到很困惑: console.log("2" + "1"); // => "21"console.log("2" - "1"); // => 1console.log('' == 0); // => trueconsole.log(true == []); // -> falseconsole.log(true == ![]); // -> false 过度依赖隐式类型转换是一个坏习惯。 首先,它使你的代码在边缘情况下不太稳定。 其次,增加了引入难以重现和修复的bug的机会。