python - 绘图 : single big column and its frequencies

标签 python pandas ggplot2

我是 Python 新手,对于我的新手问题和错误,提前表示歉意。

我试图自己找到它,但我觉得我缺少一些基本信息。

目标是在条形图中绘制这些信息。

我从 pandas 数据框中分离了一列,43169 行 × 1 列。示例:

user_lifetime
0   947.000000
1   951.000000
2   523.000000
3   741.000000
4   840.000000
5   563.000000

为了绘制此图,我需要获取每个唯一值的频率,对吗? 发现这个:

 lifetime=df.apply(lambda x: x.value_counts(dropna=False)).

它会生成这样的表格

              user_lifetime
15947.000000    4677
15916.000000    1951
2017.000000     1917
2016.000000     1131
2014.000000     445

这似乎是我的目标,但它似乎不是我可以用来绘图的表格。

对我错过的内容有什么建议吗? 我的首要任务是 ggplot,因为我们在讲座中使用了这些示例。

最佳答案

您需要链接pd.Series.value_countsplot(kind='bar') (或 plot.bar() ,版本 0.17.1 中的新功能,完全等效)

df['user_lifetime'].value_counts().plot(kind='bar')

不过,您最终可能会得到大量条形图...也许您正在寻找一个直方图,其中每个值最终都位于箱中? DataFrame.hist就是您所需要的。

如果我使用一些随机数据:

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randint(1,1000,(40000,1)), columns=['user_lifetime'])

如果我使用上面的,我会有太多的酒吧。所以我想要一个直方图,比如 20 个 bin:

df.user_lifetime.hist(bins=20)

Histogram

关于python - 绘图 : single big column and its frequencies,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41312503/

相关文章:

python - 删除包含特定值的行并删除奇数列

python - Tensorflow没有为任何变量提供梯度tf.to_double

python - Pandas 使用 dfA 列合并 == dfB 索引

python-3.x - 如何获得 word2vec 词汇表中不存在的单词的向量?

r - 在ggplot2中按模态排序facet_grid或facet_wrap网格

python - 如何从 HTTP 响应接收 zip 文件

python - Python 中的 imgradient matlab 等价物

python - Pandas - 将 numpy 数组存储在数据框列中,这是函数的结果

r - 将 ggplot2 geoms 添加到简单的特征图

R:了解 object.size() 如何与内存使用相关