【发布时间】:2017-07-12 00:19:49
【问题描述】:
我有一个 40 行的 DataFrame 列,它完全用0 填充,除了上面有数字的三行。还有一列只有一个有价值的数字。
new_column new_column2
0 0 0
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
8 0 0
9 0 0
10 NaN $21,151.67
11 0 0
12 0 0
13 0 0
14 0 0
15 0 0
16 0 0
17 0 0
18 0 0
19 0 0
20 0 0
21 0 0
22 0 0
23 0 0
24 0 0
25 $58,500.00 None
26 0 0
27 0 0
28 0 0
29 0 0
30 0 0
31 0 0
32 0 0
33 0 0
34 0 0
35 0 0
36 0 0
37 0 0
38 0 0
39 0 0
40 $57,750.00 None
是否可以获取这些值并用它们填充列,直到它们再次遇到有价值的数字?
所以$21,151.67 将填充从第 1 行到第 10 行的所有行。
$50,500.00 将填充第 11-25 行的所有行。
而$57,750.00 将填充从 25 到 40 的行。
我知道我可以执行一个简单的命令,例如此处列出的命令 (How do I fill a column with one value in Pandas?) 来填充该列,但是这些数字会在我运行代码的每个文件上发生变化,因此它需要足够强大任意取任何出现的数字并将它们排列在正确的行中。
感谢您的帮助。
【问题讨论】:
-
Nan 值呢?您是否也需要更换它们?
-
@SayPy NaN 不是我最关心的问题。只需将这些价格值与其正确的行对齐即可
标签: python pandas numpy dataframe