Ondrej Mottl πŸŒΏπŸ’»πŸ“ˆπŸŒβ³'s Avatar

Ondrej Mottl πŸŒΏπŸ’»πŸ“ˆπŸŒβ³

@ondrejmottl

Assistant Professor at the Department of Botany🌿 , Charles University. Head of Laboratory of Quantitative Ecology (bit.ly/CUNI_QuantitativeEcology) with a main focus on #communityecology 🏞️, #palaeoecology πŸ•°οΈ, and interest in #datascience πŸ’».

933
Followers
267
Following
232
Posts
07.12.2023
Joined
Posts Following

Latest posts by Ondrej Mottl πŸŒΏπŸ’»πŸ“ˆπŸŒβ³ @ondrejmottl

This looks cool! Have to try to adapt it for palaeoecological data

10.03.2026 11:45 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

I think this is an interesting piece. Do I agree with everything...no...but still worth reading!

08.03.2026 18:20 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I am seeing over and over again that people are suggesting to structure #Rstats project like package. However, having everything in `R` folder without subfolders seems like a nightmare to me. You can have the dependency checked by {renv}, run tests by testthat::test_dir()... Am I missing something?

08.03.2026 09:54 πŸ‘ 7 πŸ” 1 πŸ’¬ 4 πŸ“Œ 0

Finally someone else, who enjoys the full package::function syntax🀩

06.03.2026 06:07 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

ggview::canvas() is the best thing I have learned in 2025!

05.03.2026 08:06 πŸ‘ 25 πŸ” 9 πŸ’¬ 0 πŸ“Œ 0

You considered quarto a language?

05.03.2026 07:56 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I currently teach a special course on reproducibility, where I do teach tidy. However, in a half year, I will be teaching a cohort of freshman students basic stats in R. Struggling with the same dilemma (base ve tidy). The R coding is not the main goal, so I guess I will go with the base...

05.03.2026 07:46 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Final push for me to switch to #Linux?

04.03.2026 05:59 πŸ‘ 4 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
i love data, me too meme

i love data, me too meme

04.03.2026 00:34 πŸ‘ 189 πŸ” 43 πŸ’¬ 11 πŸ“Œ 11

πŸŽ‰ It's livestream day πŸŽ‰

Join me at 1700 (CET; 1600 UCT) today for two hours of GAM goodness 🀀

πŸ“½οΈ Youtube: youtube.com/live/A9U8e1K...
Hit the Notify me πŸ”” to get a reminder when I go live

#RStats #mgcv #statistics #GAMs #DataScience πŸ§ͺ

03.03.2026 08:04 πŸ‘ 39 πŸ” 21 πŸ’¬ 2 πŸ“Œ 1
Post image

for summarising values over groups in plots, I think that generally ridgeplots are superior to box plots and violin plots...
#rstats #statistics #dataviz

27.02.2026 15:17 πŸ‘ 49 πŸ” 10 πŸ’¬ 6 πŸ“Œ 1

I know CCA as Canonical correspondence analysis, which is actually pretty common in ecology

26.02.2026 20:38 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

All this discussion on #RStats has the benefit of finding out new cool ways of coding. {nakedpipe} is new to me! I do not think that I will be using it but I am glad I know this exists
github.com/moodymudskip...

24.02.2026 05:57 πŸ‘ 10 πŸ” 1 πŸ’¬ 0 πŸ“Œ 1
R coding style alignment chart:

LAWFUL GOOD
y <- x 
y[is.na(x)] <- "na"

NEUTRAL GOOD
y = x 
y[is.na(x)] = "na"

CHAOTIC GOOD
y = x |>
  is.na() |> 
  ifelse("na", x)


LAWFUL NEUTRAL
y <- ifelse(is.na(x), "na", x)

TRUE NEUTRAL
y = ifelse(is.na(x), "na", x)

CHAOTIC NEUTRAL
y = x %>%
  ifelse(is.na(.), "na", .)


LAWFUL EVIL
`<-`(y, x)
`[<-`(y, is.na(x), "na")

NEUTRAL EVIL
y = x
for (i in seq_along(x)) {
  if (is.na(x[[i]])) {
    x[[i]] = "na"
  }
} 

CHAOTIC EVIL
x %>%
  `[<-`(is.na(.), "na") %>%
  ``<<-``(y, .)

R coding style alignment chart: LAWFUL GOOD y <- x y[is.na(x)] <- "na" NEUTRAL GOOD y = x y[is.na(x)] = "na" CHAOTIC GOOD y = x |> is.na() |> ifelse("na", x) LAWFUL NEUTRAL y <- ifelse(is.na(x), "na", x) TRUE NEUTRAL y = ifelse(is.na(x), "na", x) CHAOTIC NEUTRAL y = x %>% ifelse(is.na(.), "na", .) LAWFUL EVIL `<-`(y, x) `[<-`(y, is.na(x), "na") NEUTRAL EVIL y = x for (i in seq_along(x)) { if (is.na(x[[i]])) { x[[i]] = "na" } } CHAOTIC EVIL x %>% `[<-`(is.na(.), "na") %>% ``<<-``(y, .)

what's a "pipes" ?? #rstats

23.02.2026 21:27 πŸ‘ 91 πŸ” 18 πŸ’¬ 9 πŸ“Œ 3

Now that the #rstats pipe wars have flared up again, it's useful to remember what the pipe (base or magrittr) was designed for, and what it was never meant to do. 🧡

1 / 7

22.02.2026 16:29 πŸ‘ 25 πŸ” 9 πŸ’¬ 1 πŸ“Œ 3

I was asked this week who are my ecologist heroes

I said no one. Academia does not need heroes

It needs collaborative, systematic, and non-hierarchical working

21.02.2026 15:52 πŸ‘ 19 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0

And I am here for it! β™₯️🍿

21.02.2026 10:05 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Simple Data Frames Provides a tbl_df class (the tibble) with stricter checking and better formatting than the traditional data frame.

If you are following #Rstats people and wandering what are all the flame wars abouts:

"Tibbles are a modern take on data frames. They keep the features that have stood the test of time, and drop the features that used to be convenient but are now frustrating."

tibble.tidyverse.org/index.html

21.02.2026 10:02 πŸ‘ 9 πŸ” 2 πŸ’¬ 0 πŸ“Œ 1

I see those behaviours as benefits, not problems. IHO, that is the behaviour, I would expect as default. However, I am now already super tidyverse-pilled.

20.02.2026 18:15 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

English version now available
luisdva.github.io/rstats/RRstu...

20.02.2026 17:07 πŸ‘ 11 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - billurbektas/tidyTRY Contribute to billurbektas/tidyTRY development by creating an account on GitHub.

I created a small R package, tidyTRY, to help clean TRY plant trait data and pull European expert indicator values (FlorVeg) directly into R.

It grew out of repeatedly rewriting the same scripts over the years.

Repo:
github.com/billurbektas...

19.02.2026 09:24 πŸ‘ 11 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

Live look in at my code somehow not throwing any errors in prod

16.02.2026 17:35 πŸ‘ 56 πŸ” 6 πŸ’¬ 0 πŸ“Œ 1

I am team {tinytable}!

17.02.2026 09:40 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

When I was writing code by hand, unit tests felt close to useless because I knew precisely what every line of code was doing.
When Claude can generate 20k LOC before breakfast, test driven development becomes very necessary.

13.02.2026 15:06 πŸ‘ 6 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

This is such a good treasure trove for teaching stats!

12.02.2026 06:02 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Can you give some examples when to use it? I am little bit struggling with "why?"...

12.02.2026 05:55 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

@natynamesna.bsky.social 🌝

11.02.2026 16:33 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Trying out dplyr 1.2.0 | Crystal Lewis Updating existing dplyr code in my workflow with new dplyr updates

dplyr 1.2.0 was released last week and since I use {dplyr} a lot in my work, I wanted to take some time to try some of the new functions.

This post provides some supplemental examples of the new functions, beyond what is provided in the new Posit materials.
#rstats

cghlewis.com/blog/dplyr_u...

09.02.2026 19:32 πŸ‘ 85 πŸ” 28 πŸ’¬ 4 πŸ“Œ 3
Post image

πŸ“’ Postdoc opening in avian biogeography & macroecology (Olomouc, CZ)
VladimΓ­r RemeΕ‘ (excellent scientist and mentor) is hiring a postdoc to study bird diversity across biomes, linking species pools, traits, climate & history using big data, fieldwork, and modelling.
πŸ”— pracuj.upol.cz/nc/zprava/cl...

09.02.2026 09:27 πŸ‘ 15 πŸ” 9 πŸ’¬ 1 πŸ“Œ 0

That was the next thing I have done. My application for accessing HPC has just been acceptedπŸ˜‰ In CZ, we have #MetaCentrum - a cluster of more than 35000 (!) CPUs...that should do the trick

06.02.2026 05:13 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0