【问题标题】:use dplyr to find a specific column matching the condition from another table使用 dplyr 从另一个表中查找与条件匹配的特定列
【发布时间】:2022-06-16 01:38:00
【问题描述】:

我有一个标准表:

criteria <- data.frame(
  stringsAsFactors = FALSE,
                                                     X = c("dx","slim_frac",
                                                           "klim","frackhfrac",
                                                           "por","matrix_k_log",
                                                           "srv_perm_log",
                                                           "frac_perm_log","pb_init",
                                                           "bhp"),
                                                   min = c(0.244897959,0,1,0,
                                                           0.04,-11,-6,-3,0,
                                                           200),
                                                   max = c(6.112244898,1,40,1,
                                                           0.16,-2,1,4,
                                                           10000,2000))

我想从我的主表中找到所有匹配的行并提取“srv_volumn”列,所以 dx 需要在 (0.244898, 6.112245) 和 slim_factor 是 (0,1) 等。我需要应用地图吗函数遍历标准表的所有行?

这是我的主数据库的一部分:

    main <- tibble::tribble(
    ~matrix_k, ~matrix_k_log, ~well_dd,   ~srv_perm, ~srv_perm_log, ~frac_perm, ~frac_perm_log,        ~por, ~inter_frac_spac, ~fracs_per_mile_well, ~models_per_7500_well, ~mod_radius,       ~dx, ~model_area, ~jlim, ~jlim2,  ~iws,  ~pb_init, ~klim, ~klim2, ~thickness, ~target_frac_len, ~flim, ~flength1, ~flength1_frac, ~flength2, ~flim2, ~eflim, ~eflim_1, ~eflim2, ~eflim2_2, ~frac_length_ratio, ~slim_frac, ~srv_width_along_well, ~slim, ~slim1_1, ~slim2, ~slim2_1, ~frackhfrac, ~f_height, ~fhlim, ~efhlim, ~efhlim2,    ~fh_fl, ~well_cell, ~int_well_spac_frac,  ~srv_area, ~srv_volume, ~rock_comp, ~srv_vol_frac,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,    10.11451,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,    9L,     237.6,           0.09,     237.6,     9L,     9L,      10L,      9L,       10L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1210.0675,         2L,          0.17307692, 0.19318568,   1.9318568,      4e-06,   0.003141778,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,    5.057255,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   18L,     237.6,           0.18,     237.6,    18L,    18L,      19L,     18L,       19L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1210.0675,         2L,          0.34615385, 0.38637135,   3.8637135,      4e-06,   0.006283555,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   3.3715033,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   27L,     237.6,           0.27,     237.6,    27L,    27L,      28L,     27L,       28L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1210.0675,         2L,          0.51923077, 0.57955703,   5.7955703,      4e-06,   0.009425333,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   2.5286275,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   36L,     237.6,           0.36,     237.6,    36L,    36L,      37L,     36L,       37L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1210.0675,         2L,          0.69230769, 0.77274271,   7.7274271,      4e-06,    0.01256711,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,    2.022902,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   44L,    232.32,           0.44,    232.32,    44L,    44L,      45L,     44L,       45L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1183.1771,         2L,          0.84615385, 0.94446331,   9.4446331,      4e-06,   0.015359801,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   1.6857517,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   53L,     233.2,           0.53,     233.2,    53L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1187.6588,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,     1.44493,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   62L, 233.82857,           0.62, 233.82857,    62L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L,   1190.86,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   1.2643137,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   71L,     234.3,           0.71,     234.3,    71L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L,  1193.261,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   1.1238344,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   79L, 231.73333,           0.79, 231.73333,    79L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1180.1892,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,    1.011451,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   88L,    232.32,           0.88,    232.32,    88L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1183.1771,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,   0.9195009,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   97L,     232.8,           0.97,     232.8,    97L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1185.6216,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,  0.84287583,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   99L,     217.8,           0.99,     217.8,    99L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1109.2285,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,  0.77803921,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   99L, 201.04615,           0.99, 201.04615,    99L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 1023.9032,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,    0.722465,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   99L, 186.68572,           0.99, 186.68572,    99L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 950.76732,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,  0.67430066,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   99L,    174.24,           0.99,    174.24,    99L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L,  887.3828,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
      6.8e-10,    -9.1673069,    1000L, 0.028546752,    -1.5444433, 0.40768222,    -0.38967823, 0.051617439,        320.94118,            16.451613,             23.368768, 0.021099991, 3.2647059,  0.63215687,   52L,   101L, 166.4, 2907.5991,   25L,    26L,       125L,        231.02034,   99L,    163.35,           0.99,    163.35,    99L,    52L,      53L,     52L,       53L,                 1L, 0.22070944,             35.417374,   12L,      13L,    89L,      88L, 0.040743012, 5.0928765,     2L,      2L,       3L, 831.92138,         2L,                   1,  1.1161839,   11.161839,      4e-06,   0.018152493,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   9.9541252,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   36L,     950.4,           0.36,     950.4,    36L,    36L,      37L,     36L,       37L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 2182.5439,         1L,          0.69230769, 0.45442512,   2.2721256,      4e-06,    0.00359928,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   4.9770626,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   71L,     937.2,           0.71,     937.2,    71L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 2152.2308,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   3.3180417,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     871.2,           0.99,     871.2,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 2000.6652,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   2.4885313,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     653.4,           0.99,     653.4,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 1500.4989,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,    1.990825,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,    522.72,           0.99,    522.72,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 1200.3991,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   1.6590209,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     435.6,           0.99,     435.6,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 1000.3326,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   1.4220179,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L, 373.37143,           0.99, 373.37143,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 857.42796,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   1.2442657,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     326.7,           0.99,     326.7,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 750.24946,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,   1.1060139,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     290.4,           0.99,     290.4,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 666.88841,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.99541252,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,    261.36,           0.99,    261.36,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 600.19957,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.90492047,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     237.6,           0.99,     237.6,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 545.63597,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.82951043,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,     217.8,           0.99,     217.8,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 500.16631,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.76570193,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L, 201.04615,           0.99, 201.04615,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 461.69197,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.71100895,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L, 186.68572,           0.99, 186.68572,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 428.71399,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.66360835,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,    174.24,           0.99,    174.24,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 400.13305,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896,
  0.000862043,    -3.0644711,    1000L, 0.002286055,    -2.6409133,   55.78181,      1.7464926,  0.10645266,        315.85205,            16.716687,             23.745295, 0.020932032,  3.212776,  0.62213283,   52L,   101L, 166.4, 2890.2339,   28L,    29L,       140L,        925.37837,   99L,    163.35,           0.99,    163.35,    99L,    52L,      53L,     52L,       53L,                 1L, 0.13188338,             20.827818,    8L,       9L,    93L,      92L, 0.016403198, 2.2964477,     1L,      1L,       2L, 375.12473,         1L,                   1, 0.65639184,   3.2819592,      4e-06,    0.00519896
  )

【问题讨论】:

  • 你可以使用dplyr::case_when()

标签: r dataframe dplyr filter


猜你喜欢
  • 1970-01-01
  • 2016-01-09
  • 1970-01-01
  • 2015-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-07
相关资源
最近更新 更多