pandas - 如何将标题添加到更大数据框中的选定数据?
问题描述
我正在学习熊猫,我有一个需要过滤的 DataFrame(来自 CSV)。原始 DataFrame 如下所示:
+----------+-----------+-------------+
| Header1 | Header2 | Header3 |
| Value 1 | A | B |
| Value 1 | A | B |
| Value 2 | C | D |
| Value 1 | A | B |
| Value 3 | B | E |
| Value 3 | B | E |
| Value 2 | C | D |
+----------+-----------+-------------+
然后,我使用以下代码选择新数据:
dataframe.header1.value_counts()
输出:
Value 1 -- 3
Value 2 -- 2
Value 3 -- 2
dtype: int64
所以,我需要在这个选择中添加标题并输出类似这样的内容
Values Count
Value 1 -- 3
Value 2 -- 2
Value 3 -- 2
解决方案
pd.Series.value_counts
返回一个系列,其中索引是调用该方法的系列中的所有唯一值。reset_index
是您想要使其成为的内容DataFrame
,我们可以使用这些rename
方法来正确获取列标签。
(df.Header1.value_counts()
.rename('Count') # Series name becomes column label for counts
.rename_axis('Values') # Index name becomes column label for unique values.
.reset_index() # Series -> DataFrame
)
# Values Count
#0 Value_1 3
#1 Value_2 2
#2 Value_3 2
推荐阅读
- mysql - 从数据库表中删除重复记录的最佳方法是什么?
- unity3d - 在unity3d的InputField中按下大ENTER时如何查看插入符号?
- java - 检查数组中是否存在值,MongoDB使用spring数据绑定投影
- android - Android 复制的文件不显示在 Windows 文件资源管理器中
- c++ - 有什么办法可以删除 constexpr
- python - AWS Glue:无法检查数据目录中的架构。表中没有行
- scala - SparkException:类上的任务不可序列化:org.apache.avro.generic.GenericDatumReader
- javascript - 从自定义应用程序自动登录 powerbi 服务
- sql - 如何在 SQL 中对写入的数据求和
- serilog - 为什么输出日志包含RequestId和TraceId?