Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python拆分数据库中的一系列字符串,然后透视显示单词及其出现次数的结果_Python_Split_Nlp_Word Count - Fatal编程技术网

如何使用Python拆分数据库中的一系列字符串,然后透视显示单词及其出现次数的结果

如何使用Python拆分数据库中的一系列字符串,然后透视显示单词及其出现次数的结果,python,split,nlp,word-count,Python,Split,Nlp,Word Count,如果我有一个数据库,有100个成千上万个单独的字符串组合,带有一个简单的分隔符 如何拆分每个维度的字符串,然后在列输出中按字计数 我是python新手,所以我了解一个简单的拆分和DF设置的基础知识,但我不知道如何将它们组合在一起 例如,下面是如何工作的,但我不确定我是否会循环使用我拥有的所有字符串?似乎这将是一个不同的方式,我将如何计算所有的结果 txt = "word1 | word 2 | word 3 | etc " x = txt.split() print(x) 任何帮助,包括在

如果我有一个数据库,有100个成千上万个单独的字符串组合,带有一个简单的分隔符

如何拆分每个维度的字符串,然后在列输出中按字计数

我是python新手,所以我了解一个简单的拆分和DF设置的基础知识,但我不知道如何将它们组合在一起

例如,下面是如何工作的,但我不确定我是否会循环使用我拥有的所有字符串?似乎这将是一个不同的方式,我将如何计算所有的结果

txt = "word1 | word 2 | word 3 | etc "

x = txt.split()

print(x)

任何帮助,包括在何处了解我所做工作的基础知识的资源,都会很有帮助。

一个好的方法是使用熊猫

将数据库加载到数据框并使用string命令

以下是一个例子:

df = pd.DataFrame({"words":["word1 | word 2 | word 3 | etc", "word 4 | word 5"]})

                           words
0  word1 | word 2 | word 3 | etc
1                Word 4 | Word 5
要拆分这些值,请执行以下操作:

result = df.words.str.split("|", expand=True)
result
         0         1         2     3
0   word1    word 2    word 3    etc
1  word 4     word 5      None  None

在python中,我们有一个名为字典的数据结构。这里,我们有一个键值对,其中值存储与键相关的信息。从这里了解更多信息-

有一种快捷方式可以获取字符串计数:

from collections import Counter
words = txt.split('|)
counts = Counter(words)

现在,字典
统计
存储字符串及其出现的时间。要获取字符串的频率,比如说
'word1'
,您需要编写
计数['word1']
。请随时要求澄清

获取计数的方法有很多,例如:

 x = len(txt.split("|"))
但不需要拆分,只需计算分隔符+第一个元素:

txt.count("|") + 1 

如果您只想在
txt
中获取由
“|”
分隔的项目数,那么您可以简单地执行以下操作:
words\u count=txt.count(“|”)+1
这将为我提供每个字符串路径的正确单词数?可能有数千个不同的单词。有没有一种方法可以实现计数['word1']的自动化?我需要拆分它们,然后旋转每个单词的聚合总数,这样我的索引就是单词,列就是单词的总和。为了进一步扩展,我正在处理许多字符串,这些字符串需要相互关联,因此如果在一个字符串中我有“Jim1 |单词2 |单词3 |等”,在另一个字符串中我有“Jim1 |单词1 |单词2”我需要能够在稍后的SQL中选择Jim,以返回Jim1出现时出现的单词的集合。“单词1”出现过一次,“单词2”出现过两次,“单词3”出现过一次我知道会有多个步骤,但添加此上下文可能会有所帮助。