如何从文本文件中绘制选择性数据?

时间:2013-09-11 19:45:23

标签: python python-2.7 pandas enthought

我想仅绘制卡车(车辆等级= 3)后车辆(车辆等级= 2)的车辆加速度和速度(简单线图)。 我有一个DataFrame如下:

  Vehicle ID  Vehicle Class  Lane ID Preced Veh ID  Local Y  Vehicle V  Vehicle A
0          j              2        2             0      6.0       45.0       0.50
1          i              3        2             j      5.5       37.5      -1.60
2          h              2        2             i      4.0       39.0       1.00
3          g              2        2             h      2.8       40.0       0.67
4          f              2        2             g      1.4       42.0       0.70
5          e              1        2             f      0.4       41.0       0.50
6          d              2        1             e      5.5       43.0       0.80
7          c              3        1             d      4.0       36.0      -1.30
8          b              3        1             c      2.8       34.5      -1.00
9          a              2        1             b      1.4       40.0       0.91

我无法弄清楚只选择跟随卡车的车辆(2跟随3辆)的代码,然后绘制它们。

注意:我创建了这个文件是为了方便我编写代码,但实际上,文本文件有18列和超过一百万行。

1 个答案:

答案 0 :(得分:0)

您可以使用shift来查看以前的车辆类:

In [11]: df['Vehicle Class'].shift()
Out[11]: 
0   NaN
1     2
2     3
3     2
4     2
5     2
6     1
7     2
8     3
9     3
Name: Vehicle Class, dtype: float64

选择那些有2级但前一辆车为3级的车辆:

In [12]: df[(df['Vehicle Class'] == 2) & (df['Vehicle Class'].shift() == 3)]
Out[12]: 
  Vehicle ID  Vehicle Class  Lane ID Preced Veh ID  Local Y  Vehicle V  Vehicle A
2          h              2        2             i      4.0         39       1.00
9          a              2        1             b      1.4         40       0.91

我不清楚你想如何绘制这个结果......