![](https://img-blog.csdnimg.cn/20190927151124774.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
自然语言处理-python必备工具包应用实战
自学视频编写的笔记,
自然语言处理之python必备工具包基础。从例子到案例实战。
1. 数据分析处理:pandas
2. 英文文本处理:nltk, spacy
3. 中文文本处理:jieba,
4. 词向量工具包:gensim
太阳不热
此人不懒,其实该写的都写了
展开
-
Pandas工具包实战(14)pandas绘图操作:pandas画图,series, dataframe
0 导库%matplotlib inlineimport pandas as pdimport numpy as npimport matplotlib.pyplot as plt1 pandas画常见折线图s = pd.Series(np.random.randn(10),index = np.arange(0,100,10))s.plot()2 dataframe多列内容画折线图df = pd.DataFrame(np.random.randn(10, 4).cumsum(0),原创 2020-06-05 22:57:58 · 784 阅读 · 0 评论 -
Pandas工具包实战(16)apply函数操作:numpy, pandas,
0 定义函数来使用import pandas as pdimport numpy as nptitanic = pd.read_csv('titanic_train.csv')titanic.head() PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare Cabin Embarked0 1 0 3 Braund, Mr. Owen Harris male 22.0 1 0 A/5 21171 7.2500 NaN原创 2020-06-06 11:03:49 · 564 阅读 · 0 评论 -
Pandas工具包实战(15)大数据处理技巧:dataframe,获取内存占用信息,降低对象的存储大小
大数据的读取与获取信息import pandas as pdgl = pd.read_csv('game_logs.csv')gl.head() date number_of_game day_of_week v_name v_league v_game_number...0 18710504 0 Thu CL1 na 1 ...1 18710505 0 Fri BS1 na 1 ...2 18710506 0 Sat CL1 na 2 ...3原创 2020-06-06 10:54:06 · 443 阅读 · 0 评论 -
Pandas工具包实战(13)索引操作进阶:series, dataframe, bool布尔索引,select选择语句,where语句,query语句
import pandas as pdimport numpy as nps = pd.Series(np.arange(5),index = np.arange(5)[::-1],dtype='int64')s4 0 3 12 21 30 4dtype: int64 s.isin([1,3,4])4 False3 True2 False1 True0 Truedtype: bools[s.isin原创 2020-06-05 18:44:04 · 501 阅读 · 0 评论 -
Pandas 工具包实战(12)字符串操作:series, dataframe
1 字符串操作import pandas as pdimport numpy as nps = pd.Series(['A','b','B','gaer','AGER',np.nan])ss.str.lower() # 把所有字母都变成小写s.str.upper() # 把所有字母都变成大写s.str.len() # 返回每个数据元素的长度index = pd.Index([' tang',' yu ','di'])index # Index([' tang', '原创 2020-06-05 18:23:10 · 195 阅读 · 0 评论 -
Pandas工具包实战(11)groupby 操作的延伸:series, dataframe
groupby 操作import pandas as pdimport numpy as npdf = pd.DataFrame({'A' : ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B' : ['one', 'one', 'two', 'three', 'two', 'two',原创 2020-06-05 18:11:24 · 156 阅读 · 0 评论 -
Pandas工具包实战(10)pandas常用操作总结:series, dataframe, 排序、去重、映射、分组、统计、缺失值处理
1 常用操作:排序sort_values,去重drop_duplicatesimport pandas as pddata = pd.DataFrame({'group':['a','a','a','b','b','b','c','c','c'], 'data':[4,3,2,1,12,3,4,5,7]})# 排序data.sort_values(by=['group','data'],ascending = [False,True],inplace=Tru原创 2020-06-05 11:15:58 · 498 阅读 · 0 评论 -
Pandas工具包实战(8)pivot数据透视表:series, dataframe
数据透视表import pandas as pdexample = pd.DataFrame({ 'Month': ["January", "January", "January", "January", "February", "February", "February", "February", "March", "March", "March", "March"], 'Category': ["Transportation",原创 2020-06-04 18:05:04 · 579 阅读 · 0 评论 -
Pandas 工具包实战(7)显示设置:series, dataframe, get_option、set_option、display.max_columns,显示设置
显示设置import pandas as pd1 设置最多显示行数pd.get_option('display.max_rows') # 60pd.set_option('display.max_rows',6)pd.Series(index = range(0,100))2 设置最多显示列数pd.get_option('display.max_columns') # 20pd.set_option('display.max_columns',30)pd.DataFrame(原创 2020-06-04 17:34:23 · 3307 阅读 · 0 评论 -
Pandas 工具包实战(6)merge 操作:series, dataframe,合并操作
merge操作import pandas as pdleft = pd.DataFrame({'key':['K0','K1','K2','K3'], 'A':['A0','A1','A2','A3'], 'B':['B0','B1','B2','B3']})right = pd.DataFrame({'key':['K0','K1','K2','K3'], 'C':['C0',原创 2020-06-04 17:23:29 · 1242 阅读 · 0 评论 -
Pandas工具包实战(5)对象的操作:series, dataframe, 对象的增删改查
1 Series结构的增删改查import pandas as pddata = [10,11,12]index = ['a','b','c']s = pd.Series(data = data,index = index)# a 10# b 11# c 12# dtype: int642 查操作s[0] # 10s[0:2] mask = [True,False,True]s[mask]# a 10# c 12# dtype: in原创 2020-06-03 17:26:54 · 192 阅读 · 0 评论 -
Pandas工具包实战(3)GroupBy操作:dataframe
1 pandas 中的 groupby操作import pandas as pdimport numpy as npdf = pd.DataFrame({'key':['A','B','C','A','B','C','A','B','C'], 'data':[0,5,10,5,10,15,10,15,20]})# for key in ['A','B','C']:# print (key,df[df['key'] == key].sum())df原创 2020-06-03 12:44:12 · 137 阅读 · 0 评论 -
Pandas工具包实战(2)pandas索引:series, dataframe, Pandas索引结构、loc、iloc、bool布尔类型的索引
1 Pandas索引结构import pandas as pddf = pd.read_csv('./data/titanic.csv')df['Age'][:5]df[['Age','Fare']][:5]2 iloc 用position来去定位 (位置)df.iloc[0] # 选择第一行的数据df.iloc[0:5] # 选择前五行的数据df.iloc[0:5,1:3] # 选择前五行的前三列的数据3 loc 用label来去定位 (标签),与修改值df = df.s原创 2020-06-03 12:35:07 · 369 阅读 · 0 评论 -
Pandas工具包实战(1)pandas介绍:pandas基本处理、创建dataframe、取指定数据、series、指定索引重设索引、统计函数
1 Pandas:数据分析处理库import pandas as pddf = pd.read_csv('./data/titanic.csv')print (help(pd.read_csv))# .head()可以读取前几条数据,指定前几条都可以df.head()# .info返回当前的信息df.info()df.index # RangeIndex(start=0, stop=891, step=1)df.columns # Index(['PassengerId',...原创 2020-06-03 11:57:22 · 206 阅读 · 0 评论 -
NLP常用工具包实战 (5)jieba中文分词器:全模式/精确模式切分词、添加自定义词典、关键词抽取、词性标注、wordcloud词云展示
1 全模式/精确模式切分词import jiebaimport jieba.analyseimport jieba.posseg as psegseg_list = jieba.cut("我来到北京清华大学", cut_all=True)print("全模式: " + "/ ".join(seg_list)) # 全模式seg_list = jieba.cut("我来到北京清华大学", cut_all=False)print("精确模式: " + "/ ".join(seg_list))原创 2020-06-01 20:16:51 · 1025 阅读 · 0 评论 -
NLP常用工具包实战 (4)spacy工具包:文本处理、词性、命名体识别、案例一(找出所有人物名字)、案例二(恐怖袭击文本资料分析)
导入工具包和英文模型# python -m spacy download en 用管理员身份打开CMDimport spacynlp = spacy.load('en')from spacy import displacyfrom collections import Counter, defaultdictimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns1 文本处理doc = nlp('W原创 2020-06-01 20:00:57 · 1266 阅读 · 2 评论 -
NLP常用工具包实战 (3)NLTK工具包:英文数据分词、Text对象、停用词、词性标注、命名实体识别、数据清洗实例
NLTK 非常实用的文本处理工具,主要用于英文数据,历史悠久~import nltk# nltk.download()# nltk.download('punkt')# nltk.download('stopwords')from nltk.tokenize import word_tokenizefrom nltk.text import Textfrom nltk.corpus import stopwordsfrom nltk import pos_tagfrom nltk.chun原创 2020-06-01 19:29:44 · 1107 阅读 · 0 评论 -
NLP常用工具包实战 (1) Python字符串处理:去掉空格或者特殊字符、替换操作、查找操作、判断操作、分割合并操作、帮助文档
1 去掉空格或者特殊字符input_str = ' 今天天气不错,今天挺风和日丽的 'print(input_str.strip()) # 今天天气不错,今天挺风和日丽的print(input_str.rstrip()) # 今天天气不错,今天挺风和日丽的print(input_str.lstrip()) # 今天天气不错,今天挺风和日丽的str2 = 'AAA今天天气不错,挺风和日丽的AAA'print(str2.strip('A')) # 今天天气不错,挺风和日丽的print(原创 2020-06-01 18:52:41 · 414 阅读 · 0 评论