# 必要なパッケージをインストール・読み込み
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("lefser")

library(lefser)
library(ggplot2)

# サンプルデータの読み込み
data(lefser_example_data)

# LEfSeアルゴリズムの実行
lefse_results <- lefser(
    feature_table = lefser_example_data$feature_table,
    metadata = lefser_example_data$metadata,
    group = "group",
    kw_cutoff = 0.05,
    lda_cutoff = 2
)

# 結果の表示
print(lefse_results)

# LDAスコアのプロット
plot_lefser(lefse_results)

# 相対存在量のヒートマップ
plot_abundance_heatmap(
    feature_table = lefser_example_data$feature_table,
    metadata = lefser_example_data$metadata,
    group = "group",
    features = lefse_results$feature[1:10]  # 上位10個の特徴を表示
)

# 結果をCSVファイルとして保存
write.csv(lefse_results, "lefse_results.csv", row.names = FALSE)