Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.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 如果值存储为“0”,如何获取熊猫中的值计数&引用;列中的分隔值?_Python_Pandas_Dataframe_Data Analysis_Series - Fatal编程技术网

Python 如果值存储为“0”,如何获取熊猫中的值计数&引用;列中的分隔值?

Python 如果值存储为“0”,如何获取熊猫中的值计数&引用;列中的分隔值?,python,pandas,dataframe,data-analysis,series,Python,Pandas,Dataframe,Data Analysis,Series,我试图分析2019年Stackoverflow开发者调查。在这种情况下,每行中具有列值的LanguageWorked是以分号分隔的。 df[“LanguageWorkedWith”]返回此系列对象 Respondent 1 HTML/CSS;Java;JavaScript;Python 2 C++;HTML/CSS;Python 3

我试图分析2019年Stackoverflow开发者调查。在这种情况下,每行中具有列值的LanguageWorked是以分号分隔的。
df[“LanguageWorkedWith”]返回此系列对象

Respondent
1                          HTML/CSS;Java;JavaScript;Python
2                                      C++;HTML/CSS;Python
3                                                 HTML/CSS
4                                      C;C++;C#;Python;SQL
5              C++;HTML/CSS;Java;JavaScript;Python;SQL;VBA
                               ...                        
88377                        HTML/CSS;JavaScript;Other(s):
88601                                                  NaN
88802                                                  NaN
88816                                                  NaN
88863    Bash/Shell/PowerShell;HTML/CSS;Java;JavaScript...
Name: LanguageWorkedWith, Length: 88883, dtype: object
我尝试了以下代码:

languages = df["LanguageWorkedWith"].str.split(";")
lan_counter = Counter(languages.apply(pd.Series).values.ravel())
但是这段代码返回很多NaN值。如何以更好的方式获得值的计数?

谢谢大家!

尝试使用
.str.get\u假人

df.LanguageWorkedWith.str.get_dummies(';').sum()
另一种可能更节省内存的方法是
str.split

df.LanguageWorkedWith.str.split(';').explode().value_counts()
输出:

C             1
C#            1
C++           3
HTML/CSS      5
Java          2
JavaScript    3
Other(s):     1
Python        4
SQL           2
VBA           1
dtype: int64

如果列中有列表对象,如何获取唯一值的计数?您是指与其他字符串混合的列表吗?然后你必须单独使用它们。不仅仅是字符串列表。。就像我将一篇文章的hashtags作为列表对象存储在每一行中一样。然后在第二种方法中只需删除
.str.split(“;”)