python
Yan456jie
这个作者很懒,什么都没留下…
展开
-
python正向最大匹配分词和逆向最大匹配分词
正向最大匹配# -*- coding:utf-8 -*-CODEC='utf-8'def u(s, encoding): 'converted other encoding to unicode encoding' if isinstance(s, unicode): return s else: return unicode(s原创 2017-12-13 10:13:47 · 2960 阅读 · 0 评论 -
Python:eval的妙用和滥用
原文地址eval()函数十分强大,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果。so,结合math当成一个计算器很好用。其他用法,可以把list,tuple,dict和string相互转化。见下例子:[python] view plain copya = "[[1,2], [3,4], [转载 2016-08-21 14:43:20 · 1836 阅读 · 0 评论 -
python中__init__、__getattr__、__setattr__、__call__的使用
class A(): ''' __init__、__getattr__、__setattr__、__call__、、都是内置函数 在某些时候回自动被调用 对象的属性储存在对象的__dict__属性中,__dict__为一个词典,对应在java中使用反射获取所有属性 可使用obj.__dict__['a'] = 3修改属性 ''' #初始化时自原创 2016-08-20 22:30:07 · 653 阅读 · 0 评论 -
Python yield 使用浅析
原文地址您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。如何生成斐波那契數列斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐转载 2016-08-20 17:54:11 · 324 阅读 · 0 评论 -
python插件快速安装
windows下安装python插件没有linux那样方便。可以先安装easy_install。我的是win64 下载地址 直接下载py文件运行,将对应目录添加到环境变量,我的是D:\dev_tools\python\Python27\Scriptseasy_install virtualenv命令测试是否安装上安装Numpy命令 easy_install numpy原创 2015-02-02 20:35:34 · 3067 阅读 · 0 评论 -
python编码转换,列表编码转换,编码检测,pycharm编写python乱码,文件中以unicode编码方式转成中文
字符串前有u的代表unicode编码,也是python内部编码unicode编码可得到其他编码:#-*- encoding:utf-8 -*-#将unicode编码为utf8print u'的'.encode("utf8")=='的' #acess其他编码解码可得到unicode#-*- encoding:utf-8 -*-#将utf8解码为unicodeprint u原创 2016-07-31 11:57:31 · 4393 阅读 · 1 评论 -
一篇文章告诉你,该学R还是Python
原文地址对于想从事数据行业的人和数据工作者来说,是学习R还是python,哪个工具更实用一直被大家争论。Martijn Theuwissen,DataCamp的教育专家详细比较了这两个工具。ython和R是统计学中两种最流行的的编程语言,R的功能性主要是统计学家在开发时考虑的(R具有强大的可视化功能),而Python因为易于理解的语法被大家所接受。在这篇文章中,我们将重转载 2016-08-20 10:44:19 · 7413 阅读 · 0 评论 -
python编辑工具
1、Python自带的IDEL,有代码提示功能2、Sublime text 自己定制环境,安装anaconda插件可得到提示,安装ConvertToUTF8转换中文编码,安装Package Control来控制包3、Anaconda的spider,Anaconda自带了大部分常用的包4、ipython有代码提示功能,使用pip install ipython安装5、ipython原创 2016-08-08 22:43:36 · 480 阅读 · 0 评论 -
python控制台查看某个包文件路径和源码
#查看文件位置nltk.__file__#查看源码nltk??nltk.Text??nltk.Text.collocations??原创 2016-08-18 13:06:49 · 5190 阅读 · 0 评论 -
python list转矩阵
#list转矩阵,矩阵列合并x = [[1.2,2.2,1.4],[1.3,2.4,2.1],[1,1,0]] #表示有三个点,第一个点为(1,2,1,3)类型为1#将其转换为矩阵,每一行表示一个点的信息m = np.array(x).Tprint m原创 2016-08-17 22:29:19 · 26041 阅读 · 0 评论 -
统计矩阵中某个元素的个数
import numpy as npfrom numpy import random as rdx = rd.randint(-5,5,(5,5))y = x==3 #得到boolean矩阵z = x[y]print z.sizeprint x[x==3]原创 2016-08-02 17:53:00 · 15737 阅读 · 0 评论 -
python的dataframe删除原来索引,重新建立从0开始的索引
def test4(): obj3 = Series(['blue', 'purple', 'yellow'], index=[0, 2, 4]) print obj3 obj4 = obj3.reset_index(drop=True) print obj4 print type(obj4)原创 2016-08-02 16:47:53 · 63398 阅读 · 3 评论 -
python组合列表对应位置元素成为元组数组 zip
one=['a','b','c']two=[1,2,3]print zip(one,two)for o,t in zip(one,two): print o,t原创 2016-08-17 15:31:30 · 4432 阅读 · 0 评论 -
Python根据方法名调用方法
def do_foo(): print "foo!" def do_bar(): print "bar!"func_name1 = "do_foo" func_name2 = "do_bar" eval(func_name1)()eval(func_name2)()原创 2016-08-17 14:52:59 · 2176 阅读 · 0 评论 -
python的dataframe数据分组
def test4(): df = pd.DataFrame({'key1': ['a', 'a', 'b', 'b', 'a'], 'key2':['one', 'two', 'one', 'two', 'one'], 'data1':np.random.randn(5),原创 2016-08-02 13:55:31 · 4439 阅读 · 0 评论 -
Python中用json.loads解码字符串出错:ValueError: No JSON object could be decoded
原因是utf8编码的文件有BOM头,将其去掉即可使用notepad++打开json文本文件,格式->转为无bom utf8ok原创 2016-08-02 10:57:49 · 2197 阅读 · 0 评论 -
python的dataframe和matrix的互换
#-*- encoding:utf-8 -*-import pandas as pdimport numpy as npdf = pd.DataFrame(np.random.randn(3,4) ,columns=list('abcd'))print dfprint df.valuesprint df.as_matrix(columns=None)原创 2016-08-01 21:05:26 · 35969 阅读 · 0 评论 -
python内部函数和常用工具函数
from itertools import *'''itertools中的迭代器工具'''def t1(): #排列 for num in permutations('abc', 2): print num,def t2(): #组合 for num in combinations('abc', 2): print num,原创 2016-08-22 21:26:05 · 1944 阅读 · 0 评论 -
python内置函数大全
原文地址最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把B转载 2016-08-22 21:30:24 · 610 阅读 · 0 评论 -
python numpy矩阵信息,shape,size,dtype
import numpy as npfrom numpy import randommatrix1 = random.random(size=(2,4))#矩阵每维的大小print matrix1.shape#矩阵所有数据的个数print matrix1.size#矩阵每个数据的类型print matrix1.dtype原创 2016-08-23 21:48:52 · 22516 阅读 · 0 评论 -
csr_matrix矩阵
#-*- encoding:utf-8 -*-import numpy as npfrom scipy.sparse import csr_matrixarr = np.array([[0,1,0,2,0],[1,1,0,2,0],[2,0,5,0,0]])b = csr_matrix(arr)print b.shape#非零个数print b.nnz#非零值print原创 2017-12-01 15:25:02 · 5953 阅读 · 0 评论 -
python中scikit-learn机器学习例子
# -*- coding: utf-8 -*-import numpyfrom sklearn import metricsfrom sklearn.svm import LinearSVCfrom sklearn.naive_bayes import MultinomialNBfrom sklearn import linear_modelfrom sklearn.datasets原创 2016-08-02 12:02:58 · 2379 阅读 · 0 评论 -
python插入数据库和生成插入sql
#-*- encoding:utf-8 -*-import csvimport sys,osimport pymysql def read_csv(filename): data = [] with open(filename) as f: f_csv = csv.reader(f) headers = next(f_csv)原创 2017-08-23 19:13:01 · 4074 阅读 · 1 评论 -
Python numpy函数hstack() vstack() stack() dstack() vsplit() concatenate()
原文地址 http://blog.csdn.net/garfielder007/article/details/51378296感觉numpy.hstack()和numpy.column_stack()函数略有相似,numpy.vstack()与numpy.row_stack()函数也是挺像的。stackoverflow上也有类似的讨论,在这里numpy vstack转载 2016-06-30 15:29:24 · 1636 阅读 · 0 评论 -
Scikit-learn使用总结
Scikit-learn使用总结 作者 Cer_ml 关注2016.08.31 22:57* 字数 3379 阅读 7595评论 8喜欢 57在机器学习和数据挖掘的应用中,scikit-learn是一个功能强大的python包。在数据量不是过大的情况下,可以解决大部分问题。学习使用scikit-learn的过程中,我自己也在补充着机器学习和数据挖掘的知识转载 2017-05-16 12:45:10 · 695 阅读 · 0 评论 -
python的scikit-learn将特征转成one-hot特征
enc = OneHotEncoder(categorical_features=np.array([0,1,2]),n_values=[5,4,2]) enc.fit(train_data) train_data = enc.transform(train_data).toarray() test_data = enc.transform(test_dat原创 2017-05-16 12:17:32 · 3542 阅读 · 0 评论 -
windows下pip安装python模块时报错总结
前言: 这几天把python版本升级后,发现pip安装模块好多都报错(暂不确定是不是因为升级导致的),我定睛一看,发现是权限的问题,那么怎么解决呢?1 权限问题C:\Users\ljf>pip install xlwtException:Traceback (most recent call last): File "c:\program files\原创 2017-01-12 18:05:29 · 4348 阅读 · 0 评论 -
python读取文件乱码
#使用codecsimport codecsf = codecs.open('nlpir/Readme.txt','r','GBK')line = f.readline()while line: print line, line = f.readline()f.close()原创 2015-03-09 09:48:14 · 8416 阅读 · 1 评论 -
python提取文本中的中文
# -*- coding: utf-8 -*-import reimport sysreload(sys)sys.setdefaultencoding("utf8")def translate(str): line = str.strip().decode('utf-8', 'ignore') # 处理前进行相关的处理,包括转换成Unicode等 p2 = re.co原创 2017-01-14 16:57:13 · 20722 阅读 · 0 评论 -
python读取数据库
python2.x和3.x都可以使用pymysql(3.x不支持MySQLdb)安装pymysql: pip install pymysql# -*- coding: utf-8 -*-import pymysqltry:#获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库 conn=pymysql.connect(host='localhost',原创 2017-01-08 18:09:15 · 2288 阅读 · 0 评论 -
KeyError: u'\xe5\x9b\xbd\xe5\xae\xb6'
字符串不加u报错 KeyError: u'\xe5\x9b\xbd\xe5\xae\xb6'表示使用unicode编码或者使用img_tags.decode("utf-8")将对应编码解码成unicode原创 2017-01-04 22:41:06 · 4908 阅读 · 0 评论 -
元组排序
首先这是一个由元组组成的列表,可以直接排序>>> s=[('the', 5), ('of', 4), ('a', 3), ('people', 2), ('is', 2), ('when', 2), ('beating', 2) ]>>> s.sort(key=lambda x:(x[1],x[0]))>>> s[('beating', 2), ('is', 2), ('peopl原创 2017-01-04 21:36:35 · 839 阅读 · 0 评论 -
python生成1行四列全2矩阵
print np.ones((1,4))*2原创 2017-01-03 20:09:04 · 15139 阅读 · 0 评论 -
给numpy矩阵添加一列
首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵import numpy as npa = np.array([[1,2,3],[4,5,6],[7,8,9]])b = np.ones(3)c = np.array([[1,2,3,1],[4,5,6,1],[7,8,9,1]])PRint(a)print(b)print(c)转载 2017-01-03 20:05:10 · 24228 阅读 · 1 评论 -
python下载图片
#-*- encoding:utf-8 -*-import urllibdef test(): url = "http://pic2.sc.chinaz.com/files/pic/pic9/201309/apic520.jpg" name ="D:/1.jpg" #保存文件时候注意类型要匹配,如要保存的图片为jpg,则打开的文件的名称必须是jpg格式,否则会产生无效原创 2016-08-13 09:02:41 · 567 阅读 · 0 评论 -
python获取中文字符串长度
print len('哈哈'.decode('utf-8')) #unicode格式print len('哈哈') #utf-8格式原创 2016-09-02 22:43:02 · 21898 阅读 · 1 评论 -
使用ipython notebook读取GBK文件,进行split时无法分割
import codecsimport retext = codecs.open(u'text/text.txt','r','GBK','ignore').read()#text = text.encode("utf-8")if isinstance(text, unicode): print 'yes'sentencts = re.split('、|,|\。|\n|\r\n|!原创 2016-09-02 22:32:26 · 955 阅读 · 0 评论 -
python中dataframe合并
在默认的 axis=0 情况下,pd.concat([obj1,obj2]) 函数的效果与 obj1.append(obj2) 是相同的;而在 axis=1 的情况下,pd.concat([df1,df2],axis=1) 的效果与 pd.merge(df1,df2,left_index=True,right_index=True,how='outer') 是相同的。#原创 2016-08-01 20:43:44 · 13424 阅读 · 0 评论 -
python random从集合中随机选择元素
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回 print slice print list #原有序列并没有改变。 print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20 pr原创 2016-08-01 20:11:05 · 23980 阅读 · 0 评论 -
Python带index的list输出
def enumerate_test(): a = ['一', '一', '三', '四', '四'] for n, w in enumerate(a): print n, w原创 2016-08-04 20:58:43 · 3439 阅读 · 0 评论