Py学习  »  Python

如何使用pandas和python 3计算数据帧中的唯一条目数[重复]

AndrewW • 6 年前 • 1824 次点击  

我有一个数据帧,它被简化为一个名为filename的列(已经按顺序排序),其中包含一个文件名列表,这些文件名可以重复,也可以不重复。

例如

Filename
/dir1/dir2/abc.jpg
/dir1/dir2/abc.jpg
/dir1/dir2/def.jpg
/dir1/dir2/hij.jpg
/dir1/dir2/hij.jpg
/dir1/dir2/hij.jpg
/dir1/dir2/hij.jpg
/dir1/dir2/hij.jpg
/dir1/dir2/klm.jpg
/dir1/dir2/klm.jpg

使用Python3.6和Pandas,我试图为每个文件名获取事件的数量 输出应该是一个数据帧,示例如下

Filename        Instances
/dir1/dir2/abc.jpg  2
/dir1/dir2/def.jpg  1
/dir1/dir2/hij.jpg  5
/dir1/dir2/klm.jpg  2

我想出了一个办法,把它转换成一个列表,然后计数,但是我喜欢把它作为一个数据帧,因为它将被重新输入到一些机器学习中,然后转换成一个列表,然后再返回,这似乎是一条很糟糕的路要走

我试过像

df = df.groupby('FileName')
df.groupby(['FileName']).count()
df = df.groupby('FileName').nunique()

但似乎都没用。 数据帧在过去被定义为15列,它们已经被删除,代码如下

df = df.drop(['Column1Name', 'Column2Name',], axis=1)

上面的例子只删除了2列(为了简单起见),但是在实际生活中有14列被输入 所以,我想知道这个或者我没有发现一个名为quantity的新列(用来存储已计数的数量)是否与此有关。

任何帮助都将不胜感激

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43880
文章 [ 1 ]  |  最新文章 6 年前