python数据帧填充
我想问一下如何使用上面的dataframe生成下面的dataframe,根据第一列生成第二列。(就像填写excel一样,但有很多次)python数据帧填充,python,excel,dataframe,Python,Excel,Dataframe,我想问一下如何使用上面的dataframe生成下面的dataframe,根据第一列生成第二列。(就像填写excel一样,但有很多次) 这里只是一个示例,第二列中的最大数字是520,第二列中的数字是连续的,并且顺序有序。假设断点是数字,并且要填充字符串的值: 1 2 0 an 0 1 df 0 2 0 0 3 sdg 0 4 gd 0 5 dg 0 6 0 0 7 dc 0 8
这里只是一个示例,第二列中的最大数字是520,第二列中的数字是连续的,并且顺序有序。假设断点是数字,并且要填充字符串的值:
1 2
0 an 0
1 df 0
2 0 0
3 sdg 0
4 gd 0
5 dg 0
6 0 0
7 dc 0
8 0 0
9 dcd 1
10 ds 1
11 1 1
12 sdg 1
13 ds 1
14 1 1
15 sd 2
16 sg 2
17 2 2
18 dsg 2
19 sdg 2
20 dfg 2
21 2 2
当然可以。您想要生成什么?请更新您的问题。对不起,这是我的错,我已尝试更新它,如果不清楚,请让我知道。谢谢!我试过代码,有一个错误TypeError:列表索引必须是整数或片,而不是str。我不知道为什么,谢谢!--------------------------------------------------------------------------------------TypeError Traceback(最近一次调用last)in()--->1 data['c']=pd.to_numeric(data['a'],errors='concurve').bfill().astype('int')TypeError:列表索引必须是整数或片,而不是strIt。数据是列表,而不是数据帧。你有没有把它转换成一个数据帧,就像你在OP中展示的那样?
1 2
0 an 0
1 df 0
2 0 0
3 sdg 0
4 gd 0
5 dg 0
6 0 0
7 dc 0
8 0 0
9 dcd 1
10 ds 1
11 1 1
12 sdg 1
13 ds 1
14 1 1
15 sd 2
16 sg 2
17 2 2
18 dsg 2
19 sdg 2
20 dfg 2
21 2 2
df[2] = pd.to_numeric(df[1], errors='coerce').bfill().astype('int')
df
Out:
1 2
0 an 0
1 df 0
2 0 0
3 sdg 0
4 gd 0
5 dg 0
6 0 0
7 dc 0
8 0 0
9 dcd 1
10 ds 1
11 1 1
12 sdg 1
13 ds 1
14 1 1
15 sd 2
16 sg 2
17 2 2
18 dsg 2
19 sdg 2
20 dfg 2
21 2 2