我有以下列名为“FzListe”的数据帧(df_hvl)和以下数据:

FzListe
7MA1, 7OS1
7MA1, 7ZJB
7MA2, 7MA3, 7OS1
76G1, 7MA1, 7OS1
7MA1, 7OS1
71E5, 71E6, 7MA1, FSS1
71E4, 7MA1, 7MB1, 7OS1
71E6, 7MA1, 7OS1
7MA1
7MA1, 7MB1, 7OS1
7MA1
7MA1, 7MA2, 7OS1
04, 7MA1
76G1, 7MA1, 7OS1
76G1, 7MA1, 7OS1
7MA1, 7OS1
7MA1
76G1, 7MA1, 7OS1
76G1, 7MA1, 7OS1
71E6, 7MA1
7MA1, 7MA2, 7OS1
7MA1
7MA1
7MA1
7MA1, 7OS1
76G1, 7MA1

我只想搜索字符串“7MA”,并计算它在列表中出现的频率(列表最初比那个片段长得多)我不想只搜索7MA1,因为它可能在一行中也出现了7MA2和/或7MA3等等。。。
数据帧称为df_hvl,我搜索了一个解决方案,但没有找到。
谢谢你的帮助

最佳答案

我想你需要str.countsum

print (df_hvl.FzListe.str.count(substr))
0     1
1     1
2     2
3     1
4     1
5     1
6     1
7     1
8     1
9     1
10    1
11    2
12    1
13    1
14    1
15    1
16    1
17    1
18    1
19    1
20    2
21    1
22    1
23    1
24    1
25    1
Name: FzListe, dtype: int64

substr = '7MA'
print (df_hvl.FzListe.str.count(substr).sum())
29

关于python - Python在数据框的列中计数字符串(单词),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42505790/

10-12 22:52