python - 如何按列将值添加到数据框中

标签 python pandas

我有一个Dataframe,其中包含三列存储、小时、计数。我面临的问题是某些商店缺少一些小时,而我希望它们为0

这就是数据框的样子

#     store_id   hour   count
# 0         13      0      56
# 1         13      1      78
# 2         13      2      53
# 3         23     13      14
# 4         23     14      13

正如您所见,ID 为 13 的store 没有第 3-23 小时的值,与商店 23 类似,它也没有许多其他时间的值。

我尝试通过创建一个包含两列 idcount 的时间数据帧并执行右外连接来解决这个问题,但是没有'不工作。

最佳答案

如果拼写错误并且每组小时内没有重复,解决方案是 reindexMultiIndex.from_product :

df = df.set_index(['store_id','hour'])
mux = pd.MultiIndex.from_product([df.index.levels[0], range(23)], names=df.index.names)
df = df.reindex(mux, fill_value=0).reset_index()

print (df)
    store_id  hour  count
0         13     0     56
1         13     1     78
2         13     2     53
3         13     3      0
4         13     4      0
5         13     5      0
6         13     6      0
7         13     7      0
8         13     8      0
9         13     9      0
10        13    10      0
11        13    11      0
12        13    12      0
13        13    13      0
14        13    14      0
15        13    15      0
16        13    16      0
17        13    17      0
18        13    18      0
19        13    19      0
20        13    20      0
21        13    21      0
22        13    22      0
23        23     0      0
24        23     1      0
25        23     2      0
26        23     3      0
27        23     4      0
28        23     5      0
29        23     6      0
30        23     7      0
31        23     8      0
32        23     9      0
33        23    10      0
34        23    11      0
35        23    12      0
36        23    13     14
37        23    14      0
38        23    15      0
39        23    16      0
40        23    17      0
41        23    18      0
42        23    19      0
43        23    20      0
44        23    21      0
45        23    22      0

关于python - 如何按列将值添加到数据框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45151951/

相关文章:

python - 如何在python中的字典列表中查找项目的累计总和

python - 如何区分 Pandas 中除一列之外的两个数据框?

python - 将文本列表格式化为列

python - 检查 shutil.copyfile 何时完成

python - 使用包含列表的列 reshape Pandas 数据框

python - 返回具有跨列唯一对的行

python - 如何迭代 pandas 中的列标题

python - Matplotlib 自定义颜色图不尊重着色

python - 在 python 中读取可变空格分隔表

python - 使用 csv 阅读器后无法使用