我有一个棒球选手信息的数据框:
fig,ax = plt.subplots(1)
ax.add_patch(rect) # Add the patch to the Axes
legend_elements = build_legend(color_map)
ax.legend(handles=legend_elements, loc='upper left')
plt.show()
我想返回击球平均值('AB')大于100的击球平均值('平均值')列的最大值。平均值列中也有'NaN'。
答案 0 :(得分:1)
如果要返回两个条件为TRUE
的整行,则可以执行以下操作。
library(tidyverse)
data <- tibble(
AB = sample(seq(50, 150, 10), 10),
avg = c(runif(9), NaN)
)
data %>%
filter(AB >= 100) %>%
filter(avg == max(avg, na.rm = TRUE))
第一个过滤器将仅保留AB大于或等于100的行,第二个过滤器将选择其最大的整个行。如果只想获得最大值,可以执行以下操作:
data %>%
filter(AB >= 100) %>%
summarise(max = max(avg, na.rm = TRUE))