library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)

data(iris)


summary_petal_length <- iris %>%
  summarise(
    min_petal_length = min(Petal.Length, na.rm = TRUE),
    max_petal_length = max(Petal.Length, na.rm = TRUE),
    mean_petal_length = mean(Petal.Length, na.rm = TRUE)
  )

print(summary_petal_length)
##   min_petal_length max_petal_length mean_petal_length
## 1                1              6.9             3.758
mean_by_species <- iris %>%
  group_by(Species) %>%
  summarise(mean_petal_width = mean(Petal.Width, na.rm = TRUE))

ggplot(mean_by_species, aes(x = Species, y = mean_petal_width)) +
  geom_col() +
  labs(
    title = "Mean Petal.Width theo Species",
    x = "Species",
    y = "Mean Petal.Width"
  ) +
  theme_minimal()

data(iris)
write.csv(iris, "iris.csv", row.names = FALSE)
import pandas as pd

df = pd.read_csv("iris.csv")
print(df.head())
##    Sepal.Length  Sepal.Width  Petal.Length  Petal.Width Species
## 0           5.1          3.5           1.4          0.2  setosa
## 1           4.9          3.0           1.4          0.2  setosa
## 2           4.7          3.2           1.3          0.2  setosa
## 3           4.6          3.1           1.5          0.2  setosa
## 4           5.0          3.6           1.4          0.2  setosa
filtered = df[df["Sepal.Length"] > 6.0]


mean_petal_width = filtered["Petal.Width"].mean()


print("Mean Petal.Width (Sepal.Length > 6.0):", mean_petal_width)
## Mean Petal.Width (Sepal.Length > 6.0): 1.8475409836065577