我正在做一些NLP,我发现患者被诊断出患有多发性硬化症.
我想用nltk告诉我一个句子的名词是多发性硬化症.问题是,医生经常将多发性硬化症称为MS,而nltk则将其作为专有名词.
例如,这句话,"他的MS在1999年被诊断出来." 被标记为:[('His', 'PRP$'), ('MS', 'NNP'), ('was', 'VBD'), ('diagnosed', 'VBN'), ('in', 'IN'), ('1999', 'CD'), ('.', '.')]
MS应该是这里的名词.有什么建议?
我在Athena中有一个名为fpa-dev的表(由Glue创建)。当我运行此简单查询时:
SELECT * FROM
fpa-dev
LIMIT 10
Run Code Online (Sandbox Code Playgroud)
它给了我这个错误:
多余的输入'-'期望{,'。',',','add','as','all','some','any','where','group','order','having ','limit','at','no','substring','position','tinyint','smallint','integer','date','time','timestamp','interval', “年”,“月”,“日”,“小时”,“分钟”,“第二”,“区域”,“连接”,“交叉”,“内部”,“左”,“右”,“满” ','自然','过滤器','上方','分区','范围','行','先行','跟随','当前','行','模式','评论”,“查看”,“替换”,“授予”,“撤消”,“特权”,“公开”,“选项”,“解释”,“分析”,“格式”,“类型”,“文本” ,“ graphviz”,“逻辑”,“分布式”,“ validate”,“ show”,“ tables”,“ views”,“ schemas”,“ catalogs”,“ columns”,“ column”,“ use”,“分区'',``函数'',``联合'',``除外'',``相交'',``到'',``系统'',``bernoulli'',``泊松'',``表样本'',``数组'',``地图'',``集合'' ,“重置”,“会话”,“数据”,“开始”,“事务”,“提交”,“回滚”,“工作”,“隔离”,“级别”,“可序列化”,“可重复”,“已提交”,“未提交”,“读取”,“写入”,“仅”,“调用”,“输入”,“输出”,“级联” ,“限制”,“包含”,“排除”,“属性”,“ nfd”,“ nfc”,“ nfkd”,“ nfkc”,“ if”,“ nullif”,“ coalesce”,标识符,digit_identifier,quoted_identifier ,backquoted_identifier}(服务:amazonathena;状态代码:400;错误代码:invalidrequestexception;请求ID:1b9aaf21-a83f-4678-b2da-19994e11cfd7)级联”,“限制”,“包含”,“排除”,“属性”,“ nfd”,“ nfc”,“ nfkd”,“ nfkc”,“ if”,“ nullif”,“ coalesce”,标识符,digit_identifier ,quoted_identifier,backquoted_identifier}(服务:amazonathena;状态代码:400;错误代码:invalidrequestexception;请求ID:1b9aaf21-a83f-4678-b2da-19994e11cfd7)级联”,“限制”,“包含”,“排除”,“属性”,“ nfd”,“ nfc”,“ nfkd”,“ nfkc”,“ if”,“ nullif”,“ coalesce”,标识符,digit_identifier ,quoted_identifier,backquoted_identifier}(服务:amazonathena;状态代码:400;错误代码:invalidrequestexception;请求ID:1b9aaf21-a83f-4678-b2da-19994e11cfd7)
有什么方法可以查询带有“-”的表,还是必须重命名表?
所以 Python 不是我的强项,而且我遇到了一个我认为很奇怪的问题。我已将问题缩小到几行代码,并进行了简化以使提出这个问题变得更容易。我有一个对象列表,这个对象:
class FinalRecord():
ruid = 0
drugs = {}
Run Code Online (Sandbox Code Playgroud)
我在 shell 中创建它们,如下所示:
finalRecords = []
fr = FinalRecord()
fr.ruid = 7
finalRecords.append(fr)
fr2 = FinalRecord()
fr2.ruid = 10
finalRecords.append(fr2)
Run Code Online (Sandbox Code Playgroud)
一旦我想更改一个对象上的药物指令,它也会更改另一个对象上的药物指令
finalRecords[0].drugs["Avonex"] = "Found"
Run Code Online (Sandbox Code Playgroud)
我打印出这个:
finalRecords[1].drugs
Run Code Online (Sandbox Code Playgroud)
它显示:
{'Avonex':'Found'}
Run Code Online (Sandbox Code Playgroud)
当我期待它实际上是空的时。我知道我不完全理解 Python 如何处理对象,有人可以帮助我吗?