4  数值型数据的操纵

4.1 算术运算符

Arithmetic operator in R Description
+ Plus
Minus
* Multiplication
/ Division
^ Exponential
** Exponential
%% Modulus
%/% Integer divide
%*% Matrix multiplication
%o% Outer product
%x% Kronecker product
Show the code
#-----------------
# Basic operations
#-----------------

3 + 5   # 8
#> [1] 8
8 - 3   # 5
#> [1] 5
7 * 5   # 35
#> [1] 35
1/2     # 0.5
#> [1] 0.5
4 ^ 4   # 256
#> [1] 256
4 ** 4  # 256
#> [1] 256
5 %% 3  # 2
#> [1] 2
5 %/% 3 # 1
#> [1] 1
Show the code
#---------
# Matrix
#---------

w <- matrix(8:13, nrow = 2, ncol = 3)
z <- matrix(1:6, nrow = 3, ncol = 2)

w %*% z
#>      [,1] [,2]
#> [1,]   64  154
#> [2,]   70  169

# Outer multiplication
w %o% z # (Output omitted)
#> , , 1, 1
#> 
#>      [,1] [,2] [,3]
#> [1,]    8   10   12
#> [2,]    9   11   13
#> 
#> , , 2, 1
#> 
#>      [,1] [,2] [,3]
#> [1,]   16   20   24
#> [2,]   18   22   26
#> 
#> , , 3, 1
#> 
#>      [,1] [,2] [,3]
#> [1,]   24   30   36
#> [2,]   27   33   39
#> 
#> , , 1, 2
#> 
#>      [,1] [,2] [,3]
#> [1,]   32   40   48
#> [2,]   36   44   52
#> 
#> , , 2, 2
#> 
#>      [,1] [,2] [,3]
#> [1,]   40   50   60
#> [2,]   45   55   65
#> 
#> , , 3, 2
#> 
#>      [,1] [,2] [,3]
#> [1,]   48   60   72
#> [2,]   54   66   78

# Kronecker product
w %x% z
#>      [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,]    8   32   10   40   12   48
#> [2,]   16   40   20   50   24   60
#> [3,]   24   48   30   60   36   72
#> [4,]    9   36   11   44   13   52
#> [5,]   18   45   22   55   26   65
#> [6,]   27   54   33   66   39   78

4.2 parse_number()

Show the code
x <- c("1.2", "5.6", "1e3")
parse_double(x)
#> [1]    1.2    5.6 1000.0
parse_number(x)
#> [1]    1.2    5.6 1000.0

4.3 count()

Show the code

# 计数

mpg |> 
    count(manufacturer,sort = T)
manufacturer n
dodge 37
toyota 34
volkswagen 27
ford 25
chevrolet 19
audi 18
hyundai 14
subaru 14
nissan 13
honda 9
jeep 8
pontiac 5
land rover 4
mercury 4
lincoln 3
Show the code


mpg |> 
    group_by(manufacturer) |> 
    summarise(
        n=n()
    ) |> 
    arrange(desc(n))
manufacturer n
dodge 37
toyota 34
volkswagen 27
ford 25
chevrolet 19
audi 18
hyundai 14
subaru 14
nissan 13
honda 9
jeep 8
pontiac 5
land rover 4
mercury 4
lincoln 3
Show the code


mpg |> 
    group_by(manufacturer) |> 
    summarise(
        n=n_distinct(class)
    ) |> 
    arrange(desc(n))
manufacturer n
toyota 4
chevrolet 3
dodge 3
ford 3
nissan 3
subaru 3
volkswagen 3
audi 2
hyundai 2
honda 1
jeep 1
land rover 1
lincoln 1
mercury 1
pontiac 1
Show the code


# 加权求和


mpg |> 
    count(manufacturer,wt = hwy,sort = T)
manufacturer n
toyota 847
volkswagen 789
dodge 664
ford 484
audi 476
chevrolet 416
hyundai 376
subaru 358
nissan 320
honda 293
jeep 141
pontiac 132
mercury 72
land rover 66
lincoln 51
Show the code

mpg |> 
    group_by(manufacturer) |> 
    summarise(
        hwy_sum=sum(hwy)
    ) |> 
    arrange(desc(hwy_sum))
manufacturer hwy_sum
toyota 847
volkswagen 789
dodge 664
ford 484
audi 476
chevrolet 416
hyundai 376
subaru 358
nissan 320
honda 293
jeep 141
pontiac 132
mercury 72
land rover 66
lincoln 51

4.4 pmax() pmin()

Show the code
df <- tribble(
  ~x, ~y,
  1,  3,
  5,  2,
  7, NA,
)
# 行最大值,行最小值
df |> 
  mutate(
    min = pmin(x, y, na.rm = TRUE),
    max = pmax(x, y, na.rm = TRUE)
  )
x y min max
1 3 1 3
5 2 2 5
7 NA 7 7

4.5 模运算

Show the code
# 整除
1:10 %/% 3
#>  [1] 0 0 1 1 1 2 2 2 3 3

# 余数
1:10 %% 3
#>  [1] 1 2 0 1 2 0 1 2 0 1

4.6 四舍五入

Show the code
x <- 123.456
round(x, 2)  # two digits
#> [1] 123.46

round(x, 1)  # one digit
#> [1] 123.5

round(x, -1) # round to nearest ten
#> [1] 120

round(x, -2) # round to nearest hundred
#> [1] 100

# Round to nearest multiple of 4
round(x / 4) * 4
#> [1] 124
Show the code
# 一半到舍入最近的偶数
round(c(1.5, 2.5,3.5,4.5))
#> [1] 2 2 4 4
Show the code
floor(x)
#> [1] 123
ceiling(x)
#> [1] 124

# Round up to nearest two digits
ceiling(x / 0.01) * 0.01
#> [1] 123.46

4.7 cut()

Show the code
x <- c(1, 2, 5, 10, 15, 20)


cut( x = x, breaks =3)                
#> [1] (0.981,7.33] (0.981,7.33] (0.981,7.33] (7.33,13.7]  (13.7,20]   
#> [6] (13.7,20]   
#> Levels: (0.981,7.33] (7.33,13.7] (13.7,20]

cut(x, breaks = c(0, 5, 10, 15, 20))
#> [1] (0,5]   (0,5]   (0,5]   (5,10]  (10,15] (15,20]
#> Levels: (0,5] (5,10] (10,15] (15,20]
cut(x, 
  breaks = c(0, 5, 10, 15, 20), 
  labels = c("sm", "md", "lg", "xl")  # 注意要少1个
)
#> [1] sm sm sm md lg xl
#> Levels: sm md lg xl


cut( x = x, breaks = c(0, 5, 10, 15, 20),include.lowest = TRUE) 
#> [1] [0,5]   [0,5]   [0,5]   (5,10]  (10,15] (15,20]
#> Levels: [0,5] (5,10] (10,15] (15,20]

4.8 累计

Show the code
x <- 1:10
cumsum(x)
#>  [1]  1  3  6 10 15 21 28 36 45 55
cumprod(x)
#>  [1]       1       2       6      24     120     720    5040   40320  362880
#> [10] 3628800
cummin(x)
#>  [1] 1 1 1 1 1 1 1 1 1 1
cummax(x)
#>  [1]  1  2  3  4  5  6  7  8  9 10
cummean(x)
#>  [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5

4.9 连续标识符

Show the code
# 变量变化时加1
consecutive_id(c(TRUE, TRUE, FALSE, FALSE, TRUE, FALSE, NA, NA))
#> [1] 1 1 2 2 3 4 5 5
consecutive_id(c(1, 1, 1, 2, 1, 1, 2, 2))
#> [1] 1 1 1 2 3 3 4 4
Show the code
df <- data.frame(x = c(0, 0, 1, 0), y = c(2, 2, 2, 2))
df %>% group_by(x, y) %>% summarise(n = n())
x y n
0 2 3
1 2 1
Show the code

df %>% group_by(id = consecutive_id(x, y), x, y) %>% summarise(n = n())
id x y n
1 0 2 2
2 1 2 1
3 0 2 1

4.10 偏移量 Offsets

Show the code
x <- c(2, 5, 11, 11, 19, 35)
dplyr::lag(x,n=1)
#> [1] NA  2  5 11 11 19
dplyr::lead(x,n=2)
#> [1] 11 11 19 35 NA NA

4.11 位置

Show the code

mpg |> 
    group_by(manufacturer,model) |> 
    mutate(
        first_hwy = first(hwy,na_rm = T),
        
        n_hwy = nth(hwy,n=5,na_rm = T),
        
        last_hwy = last(hwy,na_rm = T)
    )
manufacturer model displ year cyl trans drv cty hwy fl class first_hwy n_hwy last_hwy
audi a4 1.8 1999 4 auto(l5) f 18 29 p compact 29 26 27
audi a4 1.8 1999 4 manual(m5) f 21 29 p compact 29 26 27
audi a4 2.0 2008 4 manual(m6) f 20 31 p compact 29 26 27
audi a4 2.0 2008 4 auto(av) f 21 30 p compact 29 26 27
audi a4 2.8 1999 6 auto(l5) f 16 26 p compact 29 26 27
audi a4 2.8 1999 6 manual(m5) f 18 26 p compact 29 26 27
audi a4 3.1 2008 6 auto(av) f 18 27 p compact 29 26 27
audi a4 quattro 1.8 1999 4 manual(m5) 4 18 26 p compact 26 25 25
audi a4 quattro 1.8 1999 4 auto(l5) 4 16 25 p compact 26 25 25
audi a4 quattro 2.0 2008 4 manual(m6) 4 20 28 p compact 26 25 25
audi a4 quattro 2.0 2008 4 auto(s6) 4 19 27 p compact 26 25 25
audi a4 quattro 2.8 1999 6 auto(l5) 4 15 25 p compact 26 25 25
audi a4 quattro 2.8 1999 6 manual(m5) 4 17 25 p compact 26 25 25
audi a4 quattro 3.1 2008 6 auto(s6) 4 17 25 p compact 26 25 25
audi a4 quattro 3.1 2008 6 manual(m6) 4 15 25 p compact 26 25 25
audi a6 quattro 2.8 1999 6 auto(l5) 4 15 24 p midsize 24 NA 23
audi a6 quattro 3.1 2008 6 auto(s6) 4 17 25 p midsize 24 NA 23
audi a6 quattro 4.2 2008 8 auto(s6) 4 16 23 p midsize 24 NA 23
chevrolet c1500 suburban 2wd 5.3 2008 8 auto(l4) r 14 20 r suv 20 17 17
chevrolet c1500 suburban 2wd 5.3 2008 8 auto(l4) r 11 15 e suv 20 17 17
chevrolet c1500 suburban 2wd 5.3 2008 8 auto(l4) r 14 20 r suv 20 17 17
chevrolet c1500 suburban 2wd 5.7 1999 8 auto(l4) r 13 17 r suv 20 17 17
chevrolet c1500 suburban 2wd 6.0 2008 8 auto(l4) r 12 17 r suv 20 17 17
chevrolet corvette 5.7 1999 8 manual(m6) r 16 26 p 2seater 26 24 24
chevrolet corvette 5.7 1999 8 auto(l4) r 15 23 p 2seater 26 24 24
chevrolet corvette 6.2 2008 8 manual(m6) r 16 26 p 2seater 26 24 24
chevrolet corvette 6.2 2008 8 auto(s6) r 15 25 p 2seater 26 24 24
chevrolet corvette 7.0 2008 8 manual(m6) r 15 24 p 2seater 26 24 24
chevrolet k1500 tahoe 4wd 5.3 2008 8 auto(l4) 4 14 19 r suv 19 NA 17
chevrolet k1500 tahoe 4wd 5.3 2008 8 auto(l4) 4 11 14 e suv 19 NA 17
chevrolet k1500 tahoe 4wd 5.7 1999 8 auto(l4) 4 11 15 r suv 19 NA 17
chevrolet k1500 tahoe 4wd 6.5 1999 8 auto(l4) 4 14 17 d suv 19 NA 17
chevrolet malibu 2.4 1999 4 auto(l4) f 19 27 r midsize 27 26 26
chevrolet malibu 2.4 2008 4 auto(l4) f 22 30 r midsize 27 26 26
chevrolet malibu 3.1 1999 6 auto(l4) f 18 26 r midsize 27 26 26
chevrolet malibu 3.5 2008 6 auto(l4) f 18 29 r midsize 27 26 26
chevrolet malibu 3.6 2008 6 auto(s6) f 17 26 r midsize 27 26 26
dodge caravan 2wd 2.4 1999 4 auto(l3) f 18 24 r minivan 24 24 23
dodge caravan 2wd 3.0 1999 6 auto(l4) f 17 24 r minivan 24 24 23
dodge caravan 2wd 3.3 1999 6 auto(l4) f 16 22 r minivan 24 24 23
dodge caravan 2wd 3.3 1999 6 auto(l4) f 16 22 r minivan 24 24 23
dodge caravan 2wd 3.3 2008 6 auto(l4) f 17 24 r minivan 24 24 23
dodge caravan 2wd 3.3 2008 6 auto(l4) f 17 24 r minivan 24 24 23
dodge caravan 2wd 3.3 2008 6 auto(l4) f 11 17 e minivan 24 24 23
dodge caravan 2wd 3.8 1999 6 auto(l4) f 15 22 r minivan 24 24 23
dodge caravan 2wd 3.8 1999 6 auto(l4) f 15 21 r minivan 24 24 23
dodge caravan 2wd 3.8 2008 6 auto(l6) f 16 23 r minivan 24 24 23
dodge caravan 2wd 4.0 2008 6 auto(l6) f 16 23 r minivan 24 24 23
dodge dakota pickup 4wd 3.7 2008 6 manual(m6) 4 15 19 r pickup 19 19 15
dodge dakota pickup 4wd 3.7 2008 6 auto(l4) 4 14 18 r pickup 19 19 15
dodge dakota pickup 4wd 3.9 1999 6 auto(l4) 4 13 17 r pickup 19 19 15
dodge dakota pickup 4wd 3.9 1999 6 manual(m5) 4 14 17 r pickup 19 19 15
dodge dakota pickup 4wd 4.7 2008 8 auto(l5) 4 14 19 r pickup 19 19 15
dodge dakota pickup 4wd 4.7 2008 8 auto(l5) 4 14 19 r pickup 19 19 15
dodge dakota pickup 4wd 4.7 2008 8 auto(l5) 4 9 12 e pickup 19 19 15
dodge dakota pickup 4wd 5.2 1999 8 manual(m5) 4 11 17 r pickup 19 19 15
dodge dakota pickup 4wd 5.2 1999 8 auto(l4) 4 11 15 r pickup 19 19 15
dodge durango 4wd 3.9 1999 6 auto(l4) 4 13 17 r suv 17 16 15
dodge durango 4wd 4.7 2008 8 auto(l5) 4 13 17 r suv 17 16 15
dodge durango 4wd 4.7 2008 8 auto(l5) 4 9 12 e suv 17 16 15
dodge durango 4wd 4.7 2008 8 auto(l5) 4 13 17 r suv 17 16 15
dodge durango 4wd 5.2 1999 8 auto(l4) 4 11 16 r suv 17 16 15
dodge durango 4wd 5.7 2008 8 auto(l5) 4 13 18 r suv 17 16 15
dodge durango 4wd 5.9 1999 8 auto(l4) 4 11 15 r suv 17 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 manual(m6) 4 12 16 r pickup 16 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 auto(l5) 4 9 12 e pickup 16 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 auto(l5) 4 13 17 r pickup 16 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 auto(l5) 4 13 17 r pickup 16 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 manual(m6) 4 12 16 r pickup 16 16 15
dodge ram 1500 pickup 4wd 4.7 2008 8 manual(m6) 4 9 12 e pickup 16 16 15
dodge ram 1500 pickup 4wd 5.2 1999 8 auto(l4) 4 11 15 r pickup 16 16 15
dodge ram 1500 pickup 4wd 5.2 1999 8 manual(m5) 4 11 16 r pickup 16 16 15
dodge ram 1500 pickup 4wd 5.7 2008 8 auto(l5) 4 13 17 r pickup 16 16 15
dodge ram 1500 pickup 4wd 5.9 1999 8 auto(l4) 4 11 15 r pickup 16 16 15
ford expedition 2wd 4.6 1999 8 auto(l4) r 11 17 r suv 17 NA 18
ford expedition 2wd 5.4 1999 8 auto(l4) r 11 17 r suv 17 NA 18
ford expedition 2wd 5.4 2008 8 auto(l6) r 12 18 r suv 17 NA 18
ford explorer 4wd 4.0 1999 6 auto(l5) 4 14 17 r suv 17 19 17
ford explorer 4wd 4.0 1999 6 manual(m5) 4 15 19 r suv 17 19 17
ford explorer 4wd 4.0 1999 6 auto(l5) 4 14 17 r suv 17 19 17
ford explorer 4wd 4.0 2008 6 auto(l5) 4 13 19 r suv 17 19 17
ford explorer 4wd 4.6 2008 8 auto(l6) 4 13 19 r suv 17 19 17
ford explorer 4wd 5.0 1999 8 auto(l4) 4 13 17 r suv 17 19 17
ford f150 pickup 4wd 4.2 1999 6 auto(l4) 4 14 17 r pickup 17 17 17
ford f150 pickup 4wd 4.2 1999 6 manual(m5) 4 14 17 r pickup 17 17 17
ford f150 pickup 4wd 4.6 1999 8 manual(m5) 4 13 16 r pickup 17 17 17
ford f150 pickup 4wd 4.6 1999 8 auto(l4) 4 13 16 r pickup 17 17 17
ford f150 pickup 4wd 4.6 2008 8 auto(l4) 4 13 17 r pickup 17 17 17
ford f150 pickup 4wd 5.4 1999 8 auto(l4) 4 11 15 r pickup 17 17 17
ford f150 pickup 4wd 5.4 2008 8 auto(l4) 4 13 17 r pickup 17 17 17
ford mustang 3.8 1999 6 manual(m5) r 18 26 r subcompact 26 21 20
ford mustang 3.8 1999 6 auto(l4) r 18 25 r subcompact 26 21 20
ford mustang 4.0 2008 6 manual(m5) r 17 26 r subcompact 26 21 20
ford mustang 4.0 2008 6 auto(l5) r 16 24 r subcompact 26 21 20
ford mustang 4.6 1999 8 auto(l4) r 15 21 r subcompact 26 21 20
ford mustang 4.6 1999 8 manual(m5) r 15 22 r subcompact 26 21 20
ford mustang 4.6 2008 8 manual(m5) r 15 23 r subcompact 26 21 20
ford mustang 4.6 2008 8 auto(l5) r 15 22 r subcompact 26 21 20
ford mustang 5.4 2008 8 manual(m6) r 14 20 p subcompact 26 21 20
honda civic 1.6 1999 4 manual(m5) f 28 33 r subcompact 33 32 29
honda civic 1.6 1999 4 auto(l4) f 24 32 r subcompact 33 32 29
honda civic 1.6 1999 4 manual(m5) f 25 32 r subcompact 33 32 29
honda civic 1.6 1999 4 manual(m5) f 23 29 p subcompact 33 32 29
honda civic 1.6 1999 4 auto(l4) f 24 32 r subcompact 33 32 29
honda civic 1.8 2008 4 manual(m5) f 26 34 r subcompact 33 32 29
honda civic 1.8 2008 4 auto(l5) f 25 36 r subcompact 33 32 29
honda civic 1.8 2008 4 auto(l5) f 24 36 c subcompact 33 32 29
honda civic 2.0 2008 4 manual(m6) f 21 29 p subcompact 33 32 29
hyundai sonata 2.4 1999 4 auto(l4) f 18 26 r midsize 26 26 28
hyundai sonata 2.4 1999 4 manual(m5) f 18 27 r midsize 26 26 28
hyundai sonata 2.4 2008 4 auto(l4) f 21 30 r midsize 26 26 28
hyundai sonata 2.4 2008 4 manual(m5) f 21 31 r midsize 26 26 28
hyundai sonata 2.5 1999 6 auto(l4) f 18 26 r midsize 26 26 28
hyundai sonata 2.5 1999 6 manual(m5) f 18 26 r midsize 26 26 28
hyundai sonata 3.3 2008 6 auto(l5) f 19 28 r midsize 26 26 28
hyundai tiburon 2.0 1999 4 auto(l4) f 19 26 r subcompact 26 24 24
hyundai tiburon 2.0 1999 4 manual(m5) f 19 29 r subcompact 26 24 24
hyundai tiburon 2.0 2008 4 manual(m5) f 20 28 r subcompact 26 24 24
hyundai tiburon 2.0 2008 4 auto(l4) f 20 27 r subcompact 26 24 24
hyundai tiburon 2.7 2008 6 auto(l4) f 17 24 r subcompact 26 24 24
hyundai tiburon 2.7 2008 6 manual(m6) f 16 24 r subcompact 26 24 24
hyundai tiburon 2.7 2008 6 manual(m5) f 17 24 r subcompact 26 24 24
jeep grand cherokee 4wd 3.0 2008 6 auto(l5) 4 17 22 d suv 22 12 14
jeep grand cherokee 4wd 3.7 2008 6 auto(l5) 4 15 19 r suv 22 12 14
jeep grand cherokee 4wd 4.0 1999 6 auto(l4) 4 15 20 r suv 22 12 14
jeep grand cherokee 4wd 4.7 1999 8 auto(l4) 4 14 17 r suv 22 12 14
jeep grand cherokee 4wd 4.7 2008 8 auto(l5) 4 9 12 e suv 22 12 14
jeep grand cherokee 4wd 4.7 2008 8 auto(l5) 4 14 19 r suv 22 12 14
jeep grand cherokee 4wd 5.7 2008 8 auto(l5) 4 13 18 r suv 22 12 14
jeep grand cherokee 4wd 6.1 2008 8 auto(l5) 4 11 14 p suv 22 12 14
land rover range rover 4.0 1999 8 auto(l4) 4 11 15 p suv 15 NA 15
land rover range rover 4.2 2008 8 auto(s6) 4 12 18 r suv 15 NA 15
land rover range rover 4.4 2008 8 auto(s6) 4 12 18 r suv 15 NA 15
land rover range rover 4.6 1999 8 auto(l4) 4 11 15 p suv 15 NA 15
lincoln navigator 2wd 5.4 1999 8 auto(l4) r 11 17 r suv 17 NA 18
lincoln navigator 2wd 5.4 1999 8 auto(l4) r 11 16 p suv 17 NA 18
lincoln navigator 2wd 5.4 2008 8 auto(l6) r 12 18 r suv 17 NA 18
mercury mountaineer 4wd 4.0 1999 6 auto(l5) 4 14 17 r suv 17 NA 17
mercury mountaineer 4wd 4.0 2008 6 auto(l5) 4 13 19 r suv 17 NA 17
mercury mountaineer 4wd 4.6 2008 8 auto(l6) 4 13 19 r suv 17 NA 17
mercury mountaineer 4wd 5.0 1999 8 auto(l4) 4 13 17 r suv 17 NA 17
nissan altima 2.4 1999 4 manual(m5) f 21 29 r compact 29 27 26
nissan altima 2.4 1999 4 auto(l4) f 19 27 r compact 29 27 26
nissan altima 2.5 2008 4 auto(av) f 23 31 r midsize 29 27 26
nissan altima 2.5 2008 4 manual(m6) f 23 32 r midsize 29 27 26
nissan altima 3.5 2008 6 manual(m6) f 19 27 p midsize 29 27 26
nissan altima 3.5 2008 6 auto(av) f 19 26 p midsize 29 27 26
nissan maxima 3.0 1999 6 auto(l4) f 18 26 r midsize 26 NA 25
nissan maxima 3.0 1999 6 manual(m5) f 19 25 r midsize 26 NA 25
nissan maxima 3.5 2008 6 auto(av) f 19 25 p midsize 26 NA 25
nissan pathfinder 4wd 3.3 1999 6 auto(l4) 4 14 17 r suv 17 NA 18
nissan pathfinder 4wd 3.3 1999 6 manual(m5) 4 15 17 r suv 17 NA 18
nissan pathfinder 4wd 4.0 2008 6 auto(l5) 4 14 20 p suv 17 NA 18
nissan pathfinder 4wd 5.6 2008 8 auto(s5) 4 12 18 p suv 17 NA 18
pontiac grand prix 3.1 1999 6 auto(l4) f 18 26 r midsize 26 25 25
pontiac grand prix 3.8 1999 6 auto(l4) f 16 26 p midsize 26 25 25
pontiac grand prix 3.8 1999 6 auto(l4) f 17 27 r midsize 26 25 25
pontiac grand prix 3.8 2008 6 auto(l4) f 18 28 r midsize 26 25 25
pontiac grand prix 5.3 2008 8 auto(s4) f 16 25 p midsize 26 25 25
subaru forester awd 2.5 1999 4 manual(m5) 4 18 25 r suv 25 26 23
subaru forester awd 2.5 1999 4 auto(l4) 4 18 24 r suv 25 26 23
subaru forester awd 2.5 2008 4 manual(m5) 4 20 27 r suv 25 26 23
subaru forester awd 2.5 2008 4 manual(m5) 4 19 25 p suv 25 26 23
subaru forester awd 2.5 2008 4 auto(l4) 4 20 26 r suv 25 26 23
subaru forester awd 2.5 2008 4 auto(l4) 4 18 23 p suv 25 26 23
subaru impreza awd 2.2 1999 4 auto(l4) 4 21 26 r subcompact 26 25 27
subaru impreza awd 2.2 1999 4 manual(m5) 4 19 26 r subcompact 26 25 27
subaru impreza awd 2.5 1999 4 manual(m5) 4 19 26 r subcompact 26 25 27
subaru impreza awd 2.5 1999 4 auto(l4) 4 19 26 r subcompact 26 25 27
subaru impreza awd 2.5 2008 4 auto(s4) 4 20 25 p compact 26 25 27
subaru impreza awd 2.5 2008 4 auto(s4) 4 20 27 r compact 26 25 27
subaru impreza awd 2.5 2008 4 manual(m5) 4 19 25 p compact 26 25 27
subaru impreza awd 2.5 2008 4 manual(m5) 4 20 27 r compact 26 25 27
toyota 4runner 4wd 2.7 1999 4 manual(m5) 4 15 20 r suv 20 20 17
toyota 4runner 4wd 2.7 1999 4 auto(l4) 4 16 20 r suv 20 20 17
toyota 4runner 4wd 3.4 1999 6 auto(l4) 4 15 19 r suv 20 20 17
toyota 4runner 4wd 3.4 1999 6 manual(m5) 4 15 17 r suv 20 20 17
toyota 4runner 4wd 4.0 2008 6 auto(l5) 4 16 20 r suv 20 20 17
toyota 4runner 4wd 4.7 2008 8 auto(l5) 4 14 17 r suv 20 20 17
toyota camry 2.2 1999 4 manual(m5) f 21 29 r midsize 29 26 28
toyota camry 2.2 1999 4 auto(l4) f 21 27 r midsize 29 26 28
toyota camry 2.4 2008 4 manual(m5) f 21 31 r midsize 29 26 28
toyota camry 2.4 2008 4 auto(l5) f 21 31 r midsize 29 26 28
toyota camry 3.0 1999 6 auto(l4) f 18 26 r midsize 29 26 28
toyota camry 3.0 1999 6 manual(m5) f 18 26 r midsize 29 26 28
toyota camry 3.5 2008 6 auto(s6) f 19 28 r midsize 29 26 28
toyota camry solara 2.2 1999 4 auto(l4) f 21 27 r compact 27 26 27
toyota camry solara 2.2 1999 4 manual(m5) f 21 29 r compact 27 26 27
toyota camry solara 2.4 2008 4 manual(m5) f 21 31 r compact 27 26 27
toyota camry solara 2.4 2008 4 auto(s5) f 22 31 r compact 27 26 27
toyota camry solara 3.0 1999 6 auto(l4) f 18 26 r compact 27 26 27
toyota camry solara 3.0 1999 6 manual(m5) f 18 26 r compact 27 26 27
toyota camry solara 3.3 2008 6 auto(s5) f 18 27 r compact 27 26 27
toyota corolla 1.8 1999 4 auto(l3) f 24 30 r compact 30 35 35
toyota corolla 1.8 1999 4 auto(l4) f 24 33 r compact 30 35 35
toyota corolla 1.8 1999 4 manual(m5) f 26 35 r compact 30 35 35
toyota corolla 1.8 2008 4 manual(m5) f 28 37 r compact 30 35 35
toyota corolla 1.8 2008 4 auto(l4) f 26 35 r compact 30 35 35
toyota land cruiser wagon 4wd 4.7 1999 8 auto(l4) 4 11 15 r suv 15 NA 18
toyota land cruiser wagon 4wd 5.7 2008 8 auto(s6) 4 13 18 r suv 15 NA 18
toyota toyota tacoma 4wd 2.7 1999 4 manual(m5) 4 15 20 r pickup 20 19 20
toyota toyota tacoma 4wd 2.7 1999 4 auto(l4) 4 16 20 r pickup 20 19 20
toyota toyota tacoma 4wd 2.7 2008 4 manual(m5) 4 17 22 r pickup 20 19 20
toyota toyota tacoma 4wd 3.4 1999 6 manual(m5) 4 15 17 r pickup 20 19 20
toyota toyota tacoma 4wd 3.4 1999 6 auto(l4) 4 15 19 r pickup 20 19 20
toyota toyota tacoma 4wd 4.0 2008 6 manual(m6) 4 15 18 r pickup 20 19 20
toyota toyota tacoma 4wd 4.0 2008 6 auto(l5) 4 16 20 r pickup 20 19 20
volkswagen gti 2.0 1999 4 manual(m5) f 21 29 r compact 29 24 24
volkswagen gti 2.0 1999 4 auto(l4) f 19 26 r compact 29 24 24
volkswagen gti 2.0 2008 4 manual(m6) f 21 29 p compact 29 24 24
volkswagen gti 2.0 2008 4 auto(s6) f 22 29 p compact 29 24 24
volkswagen gti 2.8 1999 6 manual(m5) f 17 24 r compact 29 24 24
volkswagen jetta 1.9 1999 4 manual(m5) f 33 44 d compact 44 29 24
volkswagen jetta 2.0 1999 4 manual(m5) f 21 29 r compact 44 29 24
volkswagen jetta 2.0 1999 4 auto(l4) f 19 26 r compact 44 29 24
volkswagen jetta 2.0 2008 4 auto(s6) f 22 29 p compact 44 29 24
volkswagen jetta 2.0 2008 4 manual(m6) f 21 29 p compact 44 29 24
volkswagen jetta 2.5 2008 5 auto(s6) f 21 29 r compact 44 29 24
volkswagen jetta 2.5 2008 5 manual(m5) f 21 29 r compact 44 29 24
volkswagen jetta 2.8 1999 6 auto(l4) f 16 23 r compact 44 29 24
volkswagen jetta 2.8 1999 6 manual(m5) f 17 24 r compact 44 29 24
volkswagen new beetle 1.9 1999 4 manual(m5) f 35 44 d subcompact 44 28 29
volkswagen new beetle 1.9 1999 4 auto(l4) f 29 41 d subcompact 44 28 29
volkswagen new beetle 2.0 1999 4 manual(m5) f 21 29 r subcompact 44 28 29
volkswagen new beetle 2.0 1999 4 auto(l4) f 19 26 r subcompact 44 28 29
volkswagen new beetle 2.5 2008 5 manual(m5) f 20 28 r subcompact 44 28 29
volkswagen new beetle 2.5 2008 5 auto(s6) f 20 29 r subcompact 44 28 29
volkswagen passat 1.8 1999 4 manual(m5) f 21 29 p midsize 29 26 26
volkswagen passat 1.8 1999 4 auto(l5) f 18 29 p midsize 29 26 26
volkswagen passat 2.0 2008 4 auto(s6) f 19 28 p midsize 29 26 26
volkswagen passat 2.0 2008 4 manual(m6) f 21 29 p midsize 29 26 26
volkswagen passat 2.8 1999 6 auto(l5) f 16 26 p midsize 29 26 26
volkswagen passat 2.8 1999 6 manual(m5) f 18 26 p midsize 29 26 26
volkswagen passat 3.6 2008 6 auto(s6) f 17 26 p midsize 29 26 26