pacman::p_load(pacman, tidyverse)

# Read the dataset
data <- read_csv("Aridity_Gradient_Israel.csv")
## Rows: 420 Columns: 4
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Species
## dbl (3): MAP, Individual, FA_index
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
# Print the first few rows of the dataset
head(data)
## # A tibble: 6 × 4
##   Species              MAP Individual FA_index
##   <chr>              <dbl>      <dbl>    <dbl>
## 1 Anagallis arvensis   780          1    0.02 
## 2 Anagallis arvensis   780          2    0.031
## 3 Anagallis arvensis   780          3    0.078
## 4 Anagallis arvensis   780          4    0.032
## 5 Anagallis arvensis   780          5    0.01 
## 6 Anagallis arvensis   780          6    0.006
# Check for missing values and handle them (e.g., removing rows with NA in FA_index)
data_clean <- data %>%
  filter(!is.na(FA_index))

# Summary statistics for FA_index across different species and MAP levels
summary_stats <- data_clean %>%
  group_by(Species, MAP) %>%
  summarize(
    mean_FA = mean(FA_index, na.rm = TRUE),
    sd_FA = sd(FA_index, na.rm = TRUE),
    n = n()
  )
## `summarise()` has grouped output by 'Species'. You can override using the
## `.groups` argument.
# Display the complete summary statistics
options(tibble.print_max = Inf, tibble.width = Inf)
print(summary_stats)
## # A tibble: 42 × 5
## # Groups:   Species [12]
##    Species                     MAP mean_FA   sd_FA     n
##    <chr>                     <dbl>   <dbl>   <dbl> <int>
##  1 Anagallis arvensis          300  0.0194 0.0128     10
##  2 Anagallis arvensis          371  0.0251 0.0245     10
##  3 Anagallis arvensis          540  0.0224 0.0143     10
##  4 Anagallis arvensis          780  0.0281 0.0222      8
##  5 Erodium malacoides          300  0.0294 0.00974    10
##  6 Erodium malacoides          371  0.0455 0.0451     10
##  7 Erodium malacoides          540  0.0414 0.0460      9
##  8 Hedypnois rhagadioloides    300  0.0255 0.0165     10
##  9 Hedypnois rhagadioloides    371  0.0234 0.0130     10
## 10 Hedypnois rhagadioloides    540  0.0217 0.0115     10
## 11 Hedypnois rhagadioloides    780  0.0115 0.00859    10
## 12 Helianthemum salicifolium   300  0.0298 0.0286     10
## 13 Helianthemum salicifolium   371  0.0198 0.0189     10
## 14 Helianthemum salicifolium   540  0.0329 0.0305     10
## 15 Hymenocarpos circinnatus    300  0.0364 0.0256     10
## 16 Hymenocarpos circinnatus    371  0.0515 0.0504     10
## 17 Hymenocarpos circinnatus    540  0.0449 0.0337     10
## 18 Hymenocarpos circinnatus    780  0.0392 0.0194     10
## 19 Lotus peregrinus            371  0.0424 0.0315     10
## 20 Lotus peregrinus            540  0.0434 0.0277     10
## 21 Lotus peregrinus            780  0.0356 0.0233     10
## 22 Picris galilaea             300  0.0198 0.0147     10
## 23 Picris galilaea             371  0.0236 0.0171     10
## 24 Picris galilaea             540  0.0189 0.00840    10
## 25 Picris galilaea             780  0.0254 0.0132     10
## 26 Pterocephalus brevis        300  0.0223 0.0184     10
## 27 Pterocephalus brevis        371  0.0211 0.0179     10
## 28 Pterocephalus brevis        540  0.0248 0.0196     10
## 29 Pterocephalus brevis        780  0.0234 0.0185      9
## 30 Scorpiurus muricatus        300  0.0236 0.0215     10
## 31 Scorpiurus muricatus        540  0.0323 0.0268     10
## 32 Scorpiurus muricatus        780  0.0248 0.0139     10
## 33 Theligonum cynocrambe       371  0.0301 0.0204     10
## 34 Theligonum cynocrambe       540  0.0309 0.0202     10
## 35 Theligonum cynocrambe       780  0.0279 0.0217     10
## 36 Trifolium stellatum         371  0.0371 0.0363     10
## 37 Trifolium stellatum         540  0.0174 0.0138     10
## 38 Trifolium stellatum         780  0.0171 0.0139     10
## 39 Urospermum picroides        300  0.0188 0.0146     10
## 40 Urospermum picroides        371  0.0207 0.0218     10
## 41 Urospermum picroides        540  0.0186 0.0136     10
## 42 Urospermum picroides        780  0.0199 0.0195     10
# Visualise FA_index across different MAP levels for each species
ggplot(data_clean, aes(x = as.factor(MAP), y = FA_index, fill = Species)) +
  geom_boxplot() +
  facet_wrap(~ Species, scales = "free_y") +
  labs(
    title = "Fluctuating Asymmetry Index Across Different MAP Levels",
    x = "Mean Annual Precipitation (MAP) in mm",
    y = "Fluctuating Asymmetry Index (FA_index)"
  ) +
  theme_minimal()

# Scatter plot to show the relationship between MAP and FA_index for each species
ggplot(data_clean, aes(x = MAP, y = FA_index, color = Species)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  facet_wrap(~ Species, scales = "free") +
  labs(
    title = "Relationship Between MAP and FA_index for Each Species",
    x = "Mean Annual Precipitation (MAP) in mm",
    y = "Fluctuating Asymmetry Index (FA_index)"
  ) +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

# Linear models to analyse the effect of MAP on FA_index for each species
lm_results <- data_clean %>%
  group_by(Species) %>%
  do(model = lm(FA_index ~ MAP, data = .)) %>%
  summarize(
    Species,
    intercept = coef(model)[1],
    slope = coef(model)[2],
    p_value = summary(model)$coefficients[2, 4]
  )

# Display the complete linear model results
options(tibble.print_max = Inf, tibble.width = Inf)
print(lm_results)
## # A tibble: 12 × 4
##    Species                   intercept        slope p_value
##    <chr>                         <dbl>        <dbl>   <dbl>
##  1 Anagallis arvensis           0.0171  0.0000134    0.433 
##  2 Erodium malacoides           0.0236  0.0000379    0.590 
##  3 Hedypnois rhagadioloides     0.0345 -0.0000282    0.0119
##  4 Helianthemum salicifolium    0.0176  0.0000246    0.612 
##  5 Hymenocarpos circinnatus     0.0458 -0.00000560   0.848 
##  6 Lotus peregrinus             0.0504 -0.0000177    0.556 
##  7 Picris galilaea              0.0181  0.00000777   0.508 
##  8 Pterocephalus brevis         0.0207  0.00000442   0.784 
##  9 Scorpiurus muricatus         0.0255  0.00000256   0.898 
## 10 Theligonum cynocrambe        0.0329 -0.00000590   0.792 
## 11 Trifolium stellatum          0.0497 -0.0000458    0.0909
## 12 Urospermum picroides         0.0193  0.000000477  0.974