我想在数据框中插入特定的行。dataframe包含id、hourname和count列。我想在没有数据的小时数(0-23)中插入行。这是我的数据框
index id hourname count
0 a 0 1
1 a 4 1
2 a 14 1
3 a 15 3
4 a 17 1
5 a 20 1
这就是我想要实现的
index id hourname count
0 a 0 1
1 a 1 0
2 a 2 0
3 a 3 0
4 a 4 1
5 a 5 0
6 a 6 0
7 a 7 0
8 a 8 0
9 a 9 0
10 a 10 0
11 a 11 0
12 a 12 0
13 a 13 0
14 a 14 1
15 a 15 3
16 a 16 0
17 a 17 1
18 a 18 0
19 a 19 0
20 a 20 1
21 a 21 0
22 a 22 0
23 a 23 0
我从csv文件中获取数据,这里是文件内容(源代码中文件名为a.csv)
,id,hourname,count
0,a,0,1
1,a,4,1
2,a,14,1
3,a,15,3
4,a,17,1
5,a,20,1
这是我的源代码
import csv
import pandas as pd
import numpy as np
result4 = pd.read_csv("a.csv")
print(result4)
for i in range(0,23):
if result4.loc[i, 'hourname'] != i:
line = pd.DataFrame({"id": "a", "hourname": i, "count":0}, index=[i])
result4 = result4.append(line, ignore_index=False)
result4 = result4.sort_index().reset_index(drop=True)
print(result4)
我希望这能回答你的问题
我只是创建了一个包含从0到23的整数的列表
k
,然后我得到了list x
和list k
之间的差作为list i
。在这些之后,我通过list i
将它的项添加到list x
中,并在list y
中相邻的标记处添加0试试看
这会给你所有的时间。然后填写缺失的id并计数
相关问题 更多 >
编程相关推荐