⑴ python pandas 过滤某列特殊字符求助
汉字也被替换掉了:utf-8
import numpy as np
import pandas as pd
import re
df=pd。
#coding;cidnum'.keyword = df,';)
发现结果把所有的非数字及字母全部替换掉了;;keyword')
df;/, '.str,';'[^a-zA-Z0-9_\]
#将双引号过滤掉
#将NA的替换掉g
df=df.keyword = df;;path'
df,'name'home/.keyword, '.replace(r;0'file_20150625'.fillna(')
r=u',header=None;cid'.str.lower()
i = 0
df, sep='.keyword,字母意外的所有特殊符号,数字;;u9fa5]'u4e00-\t'想过滤掉除文字。原因是什么啊.read_csv('.columns=[',具体解决方案如下:
解决方案1:
改成r="\W"试试
解决方案2:
=u'u4e00-\[^a-zA-Z0-9_\u9fa5]'
解决方案3:
你自己先要确定“乱码”的定义,例如韩文(unicode),如果你装了韩文字体,那是可以显示的,不是乱码,但没装的话就是问号一堆,如果是韩文
(euc-kr),在汉字系统那只是一堆无语义的汉字……可能这个举例扯远了,你觉得不会有这种情况,但我只是提醒一下会有意料之外的情况
所以,你需要一个白名单,把你允许的字符unicode范围都列出来,因为肯定不止汉字,像你列出的文件名中就有空格
另外,没必要逐个字符检查,直接用re.sub去除白名单外的字符就可以了
⑵ python中的filter()函数怎么用特别是一个函数有多个输入参数时。
map是把函数调用的结果放在列表里面返回,它也可以接受多个 iterable,在第n次调用function时,将使用iterable1[n], iterable2[n], ...作为参数。
filter(function, iterable)
这个函数的功能是过滤出iterable中所有以元素自身作为参数调用function时返回True或bool(返回值)为True的元素并以列表返回.
def f_large_than_5(x):
return x > 5
filter(f_large_than_5, range(10))
>>[6,7,8,9]
⑶ python pandas如何过滤剔除数据
import pandas as pd
khhlist = pd.read_excel('客户号.xlsx')
hmdlist = pd.read_excel('黑名单.xlsx')
khhlist = khhlist[~khhlist['客户号'].isin(hmdlist['黑名单客户'].values)]
renamelist = {'客户号':'优质客户'}
yzkhlist = khhlist.rename(columns=renamelist)
yzkhlist.to_excel('优质客户.xlsx', encoding='utf8')
这个简单,用isin函数,前面加上~取反即可
⑷ 智能对话模型
智能对话模型
概述
AIML 人工智能标记语言
WebQA 开放域问答
Deeplearning 深度学习
效果展示
启动服务
环境说明
Linux/Python2.7/PyCharm
安装依赖
$ pip2 install jieba $ pip2 install aiml $ pip2 install lxml $ pip2 install beautifulsoup4 $ pip2 install flask
运行流程
Working directory: chatbot-aiml-webqa/core
$ cd chatbot-aiml-webqa/core $ python2 web/server.py (or $ nohub python2 web/server.py) > ...... > * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) CURL: $ curl "0.0.0.0:5000/chat" -d "message=新闻" $ curl "0.0.0.0:5000/chat" -d "message=天气" $ curl "0.0.0.0:5000/chat" -d "message=时间"
处理流程
步骤一:预处理
限制字数
过滤敏感词(恶心、政治、色情、违法......)
步骤二:知识库匹配(AIML)
基本功能:打招呼、闲聊......
异常处理:问题太长、空白问题、找不到回复......
情绪回答:表情、夸奖、嘲笑......
如果匹配不到回答,进行步骤三
步骤三:互联网搜索(WebQA)
新闻----新浪新闻
文章----每日一文
笑话----糗事网络
时间----搜狗时间
天气----搜狗天气
空气----搜狗空气
其他遍历网络搜索
网络汉语
网络翻译
网络图谱
网络汇率
网络计算
网络股票
网络歌词
网络最新
网络
网络知道
如果搜索不到回答,进行步骤四
步骤四:神经网络
基于Seq2Seq模型的下一代对话引擎不仅仅是在现有的回答中训练最佳回答,而是能自我创造一个类似于人类的回答。
语料库: http://61.93.89.94/Noah_NRM_Data/
目前这部分没时间实现......暂时先用图灵机器人API代替吧~~~
学习功能
利用AIML模板+shelve存储
* 说错 *
* 答错 *
......
ME > 世界上最漂亮的人是谁 AI > 灰姑娘 ME > 你说错了 AI > 那你教我吧 ME > 白雪公主 AI > 我学会啦,下次你就可以问我"世界上最漂亮的人是谁"...... ME > 世界上最漂亮的人是谁 AI > 白雪公主
⑸ Python 之内置函数:filter、map、rece、zip、enumerate
这几个函数在 Python 里面被称为高阶函数,本文主要学习它们的用法。
filter 函数原型如下:
第一个参数是判断函数(返回结果需要是 True 或者 False),第二个为序列,该函数将对 iterable 序列依次执行 function(item) 操作,返回结果是过滤之后结果组成的序列。
简单记忆:对序列中的元素进行筛选,获取符合条件的序列。
返回结果为: ,使用 list 函数可以输入序列内容。
map 函数原型如下:
该函数运行之后生成一个 list,第一个参数是函数、第二个参数是一个或多个序列;
下述代码是一个简单的测试案例:
上述代码运行完毕,得到的结果是: 。使用 print(list(my_new_list)) 可以得到结果。
map 函数的第一个参数,可以有多个参数,当这种情况出现后,后面的第二个参数需要是多个序列。
map 函数解决的问题:
rece 函数原型如下:
第一个参数是函数,第二个参数是序列,返回计算结果之后的值。该函数价值在于滚动计算应用于列表中的连续值。
测试代码如下:
最终的结果是 6,如果设置第三个参数为 4,可以运行代码查看结果,最后得到的结论是,第三个参数表示初始值,即累加操作初始的数值。
简单记忆:对序列内所有元素进行累计操作。
zip 函数原型如下:
zip 函数将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一样,则返回列表长度与最短的对象相同,利用星号( * )操作符,可以将元组解压为列表。
测试代码如下:
展示如何利用 * 操作符:
输出结果如下:
简单记忆:zip 的功能是映射多个容器的相似索引,可以方便用于来构造字典。
enumerate 函数原型如下:
参数说明:
该函数用于将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
测试代码如下:
返回结果为: 。
本文涉及的函数可以与 lambda 表达式进行结合,能大幅度提高编码效率。最好的学习资料永远是官方手册