CoolFace
Apppublic

P-Tech/SupervisedLearning

sourceHugging Facegpl-3.0updated 2y agoView on Hugging Face
1likes
app.R3864 linesDownload Raw Back to root
1library(shiny)2library(shinyjs)3library(bslib)4library(dplyr)5library(ggplot2)6library(tm)7library(SnowballC)8library(plotly)9library(text2vec)10library(tokenizers)11library(dplyr)12library(tidyr)13library(igraph)14library(ggraph)15library(reshape2)16library(SnowballC)17library(RColorBrewer)18library(syuzhet)19library(cluster)20library(Rtsne)21library(umap)22library(MASS)23library(koRpus)24library(openxlsx)25library(tools)26library(shinyWidgets)27library(readxl)28library(scales)29library(caret)30library(BBmisc)31library(glmnet)32library(pROC)33library(ROCR)34library(car)35library(ResourceSelection)36library(tree)37library(ggplotify)38library(lmtest)39library(gridExtra)40library(patchwork)41library(caret)42library(randomForest)43library(gbm)44library(earth)45library(broom)46library(rlang)47library(ggdendro)48library(pastecs)49options(width = 150)50options(digits = 4, scipen = 1000000000)51options(shiny.maxRequestSize=30*1024^2)52 53 54 55# Function to process a chunk of lines and update word counts56process_chunk <- function(chunk, word_counts) {57  max_word_length <- 1000  # Set a maximum word length58  59  for (line in chunk) {60    words <- unlist(strsplit(line, "\\s+"))  # Splitting line into words61    for (word in words) {62      word <- as.character(word)  # Ensure 'word' is a character string63      if (nchar(word) == 0 || nchar(word) > max_word_length) {64        next  # Skip empty words or words that are too long65      }66      # Check if word exists and get the current count67      if (!is.null(word_counts[[word]])) {68        current_count <- word_counts[[word]]69      } else {70        current_count <- 071      }72      word_counts[[word]] <- current_count + 173    }74  }75  return(word_counts)76}77 78# Main function to count word frequencies in the file79count_word_frequencies <- function(file_path) {80  con <- file(file_path, "r")      # Open file connection81  word_counts <- new.env(hash = TRUE, size = 600000)  # Initialize environment for counting82  83  while(TRUE) {84    lines <- readLines(con, n = 5000)  # Adjust 'n' based on system capability85    if (length(lines) == 0) {86      break87    }88    word_counts <- process_chunk(lines, word_counts)89  }90  91  close(con)  # Close file connection92  return(as.list(word_counts))  # Convert environment to list for easy access93}94 95ui <- fluidPage(96  theme = bs_theme(version = 5, bootswatch = "spacelab"),97  useShinyjs(),  # Initialize shinyjs98  titlePanel("PtteM Data Science"),99  tags$head(tags$link(rel = "stylesheet", href="https://fonts.googleapis.com/css?family=Montserrat:100,300,400,700&display=swap"),100            tags$style(HTML("101        body, h1, h2, h3, h4, h5, h6, .nav, p, a, .shiny-input-container {102        font-family: 'Montserrat'; /* Font type for the title attribute */103        font-weight: 385;104        color: #007c9e !important;105      }106        * {107        font-family: 'Montserrat', sans-serif;108        font-weight: 385; 109        color: #195576; /* Blue color */110      }111        body { 112        background-color: #f7f7f7; /* Light gray background */113        }114      .icon-btn {115        border: 1px solid #0d6efd; /* Example border: solid, 2 pixels, #555 color */116        border-radius: 15%; /* Circular border */117        color: #00969e; /* Icon color */118        font-family: 'Montserrat'; /* Font type for the title attribute */119        font-weight: 385;120        background-color: #f7f7f7;121        padding: 125px; /* Space around the icon */122        margin: 25px; /* Space around the button */123        font-size: 24px; /* Icon size */124        box-shadow: 0 2px 4px rgba(0,0,0,0.2);125      }126      .icon-btn:hover {127        color: #00969e; /* Icon color on hover */128        border-color: #007c9e;129        background-color: #ebfbfd;/* Border color on hover */130      }131           /* Add custom styles here */132      .shiny-input-container {133        margin-bottom: 15px;134      }135      .box {136        border: 1px solid #ddd;137        padding: 20px;138        border-radius: 50px;139        margin-bottom: 200px;140        gap: 200px;141        align-items: center;142      }143    #statsTable_wrapper {144      margin: 0 auto;145    }146    .shiny-output-error {147    border: 1px solid #FF0000; /* Red border on error */148    }149      /* If you want to change the font size of the tooltip, you can add custom CSS for the 'title' attribute's default styling. */150    "))),151  tags$head(152    # Include JavaScript to reload the page153    tags$script(HTML("154    document.addEventListener('DOMContentLoaded', function() {155    document.getElementById('myElement').style.color = '#0d6efd'; // Change to your desired color156  });157"))158  ),159  tags$head(160    tags$script(HTML("161      function reloadPage() {162        window.location.reload();163      }164    "))165  ),166  # Refresh button that calls the JavaScript function167  actionButton("refresh", "Refresh Analysis", onclick = "reloadPage();"),168  # Help Text or Information for the user169  helpText("Bu uygulama ile metin analizi başlığı altındaki veri bilimi fonksiyonlarına erişebilirsiniz."),170  #Supervised Learning171        h2("Supervised Learning Section"),172        tabsetPanel(173          tabPanel("Simple Linear Regression",174                   sidebarLayout(175                     sidebarPanel(176                       fileInput("slrinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),177                       actionButton("loadslr", "Load Data"),178                       selectInput("targetslr", "Select Target Column", choices = NULL),179                       selectizeInput("independentVar", "Select Independent Variable", choices = NULL, multiple = FALSE),180                       sliderInput("dataSplitslr", 181                                   "Data Split Ratio",182                                   min = 0.1,183                                   max = 0.9,184                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing185                                   step = 0.05,186                                   ticks = FALSE,187                                   animate = TRUE),188                       actionButton("slrassumption", "Run Assumption"),189                       actionButton("slrmodel", "Run SLR Model"),190                       HTML("<div>191  <h2>Basit Doğrusal Regresyon Paneli</h2>192  193  <h3>Çıktı Nedir ve Neden Kullanılır?</h3> Bu panel, bir hedef değişken ile bir veya birden fazla bağımsız değişken arasındaki ilişkiyi modellemek için basit doğrusal regresyon (SLR) analizi yapar. SLR, iki değişken arasındaki ilişkinin doğasını ve gücünü anlamak için kullanılır.</p>194  195  <h3>Kullanım Adımları:</h3></p>196  <ol>197    <li><strong>Veri Dosyası Yükleme:</strong> SLR analizi için bir CSV veya XLSX dosyasını <code>fileInput</code> aracılığıyla yükleyin.</li>198    <li><strong>Hedef ve Bağımsız Değişken Seçimi:</strong> Analiz için hedef değişkeni ve bağımsız değişkeni seçin.</li>199    <li><strong>Analizi Çalıştırma:</strong> <code>actionButton</code> butonlarına tıklayarak SLR modelini ve varsayım kontrollerini çalıştırın.</li>200  </ol>201  202  <h3>Kullanıcı Etkileşimi:</h3> Kullanıcılar, dosya yükledikten ve gerekli değişkenleri seçtikten sonra analizi başlatır ve sonuçlar ana panelde görselleştirilir.</p>203  204  <h3>Veri Bilimi Alanındaki Kullanımı:</h3> Basit doğrusal regresyon, özellikle iki değişken arasındaki ilişkiyi keşfetmek ve bu ilişkinin gücünü ve yönünü belirlemek için önemli bir yöntemdir. SLR, tahmin modelleri oluşturma, trend analizi ve değişkenler arasındaki ilişkilerin değerlendirilmesi gibi çeşitli alanlarda kullanılır.</p>205  206  <h3>Desteklenen Dosya Tipleri:</h3> Kullanıcılar, analiz için CSV (.csv) veya Excel (.xlsx) formatında dosyalar yükleyebilirler.</p>207  208  <h3>Sonuçların Yorumlanması:</h3> Elde edilen model özeti, regresyon katsayıları, p-değerleri, R-kare gibi istatistiklerle modelin anlamlılığını ve açıklayıcılığını değerlendirir. Ayrıca, varsayım testleri ve diyagnostik grafikler modelin varsayımlara uygunluğunu kontrol etmek için kullanılır.</p>209  210  <ul>211    <li><strong>Model Özeti:</strong> Modelin istatistiksel anlamlılığını ve açıklayıcılığını değerlendirir.</li>212    <li><strong>Varsayım Testleri:</strong> Modelin normal dağılım, homoskedastisite, bağımsızlık ve doğrusallık gibi temel varsayımlara uygunluğunu test eder.</li>213    <li><strong>Regresyon Çizgisi Grafiği:</strong> Hedef ve bağımsız değişken arasındaki ilişkiyi görsel olarak gösterir.</li>214  </ul>215  216  <p>Bu özellikler, basit doğrusal regresyon analizinin, veri setinden önemli içgörüler elde etmek ve değişkenler arasındaki ilişkileri anlamak için nasıl kullanılabileceğini gösterir.</p>217</div>218")219                     ),220                     mainPanel(221                       tabsetPanel(222                         tabPanel("Data Summary", verbatimTextOutput("slrsummary")),223                         tabPanel("Assumptions for SLR Model", 224                                  tabsetPanel(                                  225                                    tabPanel("Diagnostics",226                                             plotlyOutput("residualsFittedPlot"),227                                             plotlyOutput("qqPlot"),228                                             plotlyOutput("scaleLocationPlot"),229                                             plotlyOutput("residualsLeveragePlot")230                                    ),231                                    tabPanel("Shapiro-Wilk Test", verbatimTextOutput("shapiroTest")),232                                    tabPanel("Breusch-Pagan Test", verbatimTextOutput("ncvTest")),233                                    tabPanel("Linearity Plot", plotlyOutput("linearityPlotOutput", width = "100%", height = "700px")),234                                    tabPanel("Durbin-Watson Test", verbatimTextOutput("durbinWatsonTest"))235                                  )236                         ),237                         tabPanel("SLR Model Evaluation",238                                  tabsetPanel(239                                    tabPanel("Model Summary", verbatimTextOutput("slrmodeleva")),240                                    tabPanel("Correlation Coefficient Between the Variables", verbatimTextOutput("corcoefslr")),241                                    tabPanel("Confidence Interval", verbatimTextOutput("confintslr")),242                                    tabPanel("Regression Line Plot", plotlyOutput("slrregressPlot", width = "100%", height = "625px"))243                                  )244                         )245                       )246                     )247                   )248          ),249          tabPanel("Multiple Linear Regression",250                   sidebarLayout(251                     sidebarPanel(252                       fileInput("mlrinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xslx")),253                       actionButton("loadmlr", "Load Data"),254                       selectInput("targetmlr", "Select Target Column", choices = NULL),255                       selectizeInput("independentVarmlr", "Select Independent Variable", choices = NULL, multiple = TRUE),256                       sliderInput("dataSplitmlr", 257                                   "Data Split Ratio",258                                   min = 0.1,259                                   max = 0.9,260                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing261                                   step = 0.05,262                                   ticks = FALSE,263                                   animate = TRUE),264                       actionButton("mlrassumption", "Run Assumption"),265                       actionButton("mlrmodel", "Run MLR Model"),266                       HTML("<div>267  <h2>Çoklu Doğrusal Regresyon Paneli</h2>268  269  <h3>Çıktı Nedir ve Neden Kullanılır?</h3> Bu panel, bir hedef değişken ile birden fazla bağımsız değişken arasındaki ilişkiyi modellemek için çoklu doğrusal regresyon (MLR) analizi yapar. MLR, değişkenler arasındaki ilişkilerin karmaşıklığını anlamak ve birden çok bağımsız değişkenin hedef değişken üzerindeki etkisini keşfetmek için kullanılır.</p>270  271  <h3>Kullanım Adımları:</h3></p>272  <ol>273    <li><strong>Veri Dosyası Yükleme:</strong> MLR analizi için bir CSV veya XLSX dosyasını <code>fileInput</code> aracılığıyla yükleyin.</li>274    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçimi:</strong> Analiz için hedef değişkeni ve birden fazla bağımsız değişkeni seçin.</li>275    <li><strong>Analizi Çalıştırma:</strong> <code>actionButton</code> butonlarına tıklayarak MLR modelini ve varsayım kontrollerini çalıştırın.</li>276  </ol>277  278  <h3>Kullanıcı Etkileşimi:</h3> Kullanıcılar, dosya yükledikten ve gerekli değişkenleri seçtikten sonra analizi başlatır ve sonuçlar ana panelde görselleştirilir.</p>279  280  <h3>Veri Bilimi Alanındaki Kullanımı:</h3> Çoklu doğrusal regresyon, tahmin modelleri oluşturma, çok faktörlü etki analizi ve değişkenler arasındaki ilişkilerin değerlendirilmesi gibi çeşitli alanlarda kullanılır. MLR, birden çok bağımsız değişkenin hedef değişken üzerindeki etkisini ve ilişkilerin yapısını anlamak için tercih edilen bir yöntemdir.</p>281  282  <h3>Desteklenen Dosya Tipleri:</h3> Kullanıcılar, analiz için CSV (.csv) veya Excel (.xlsx) formatında dosyalar yükleyebilirler.</p>283  284  <h3>Sonuçların Yorumlanması:</h3> Elde edilen model özeti, regresyon katsayıları, p-değerleri, R-kare gibi istatistiklerle modelin anlamlılığını ve açıklayıcılığını değerlendirir. Ayrıca, varsayım testleri ve diyagnostik grafikler modelin varsayımlara uygunluğunu kontrol etmek için kullanılır.</p>285  286  <ul>287    <li><strong>Model Özeti:</strong> Modelin istatistiksel anlamlılığını ve açıklayıcılığını değerlendirir.</li>288    <li><strong>Varsayım Testleri:</strong> Modelin normal dağılım, homoskedastisite, bağımsızlık, doğrusallık ve çoklu bağlantı gibi temel varsayımlara uygunluğunu test eder.</li>289    <li><strong>Regresyon Çizgisi Grafiği:</strong> Hedef ve bağımsız değişkenler arasındaki ilişkiyi görsel olarak gösterir.</li>290  </ul>291  292  <p>Bu özellikler, çoklu doğrusal regresyon analizinin, veri setinden derinlemesine içgörüler elde etmek ve değişkenler arasındaki ilişkileri anlamak için nasıl kullanılabileceğini gösterir.</p>293</div>294")295                     ),296                     mainPanel(297                       tabsetPanel(298                         tabPanel("Data Summary", verbatimTextOutput("mlrsummary")),299                         tabPanel("Assumptions for MLR Model", 300                                  tabsetPanel(                                  301                                    tabPanel("Diagnostics",302                                             plotlyOutput("resFitmlrPlot"),303                                             plotlyOutput("qqPlotmlr"),304                                             plotlyOutput("scaleLocmlrPlot"),305                                             plotlyOutput("resLevmlrPlot")306                                    ),307                                    tabPanel("Shapiro-Wilk Test", verbatimTextOutput("shapTestmlr")),308                                    tabPanel("Breusch-Pagan Test", verbatimTextOutput("ncvTestmlr")),309                                    tabPanel("Linearity Plot", plotlyOutput("linPlotmlr", width = "100%", height = "725px")),310                                    tabPanel("Durbin-Watson Test", verbatimTextOutput("dWTestmlr")),311                                    tabPanel("Variance Inflation Factor", verbatimTextOutput("vifmlr"))312                                  )313                         ),314                         tabPanel("MLR Model Evaluation",315                                  tabsetPanel(316                                    tabPanel("Model Summary", verbatimTextOutput("mlrmodeleva")),317                                    tabPanel("Correlation Coefficient Between the Variables", verbatimTextOutput("corcoefmlr")),318                                    tabPanel("Confidence Interval", verbatimTextOutput("confintmlr")),319                                    tabPanel("Model Evaluation Metrics", verbatimTextOutput("modelevamet")),320                                    tabPanel("Regression Line Plot", plotlyOutput("mlrregressPlot", width = "100%", height = "625px"))321                                  )322                         ),323                         324                       ),325                     )326                   )327          ),328          tabPanel("Logistic Regression",329                   sidebarLayout(330                     sidebarPanel(331                       fileInput("glmfile", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),332                       actionButton("loadData", "Load Data"),333                       selectInput("targetglm", "Select Target Column", choices = NULL),334                       selectizeInput("independentVars", "Select Independent Variables", choices = NULL, multiple = TRUE),335                       sliderInput("dataSplit", 336                                   "Data Split Ratio",337                                   min = 0.1,338                                   max = 0.9,339                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing340                                   step = 0.05,341                                   ticks = FALSE,342                                   animate = TRUE),343                       actionButton("glmassumption", "Run Assumption"),344                       actionButton("runLogisticRegression", "Run Logistic Regression"),345                       HTML("<div>346  <h2>Lojistik Regresyon Paneli</h2>347  348  <h3>Çıktı Nedir ve Neden Kullanılır?</h3> Bu panel, bir veya birden fazla bağımsız değişken ile kategorik bir hedef değişken arasındaki ilişkiyi modellemek için lojistik regresyon analizi yapar. Lojistik regresyon, özellikle ikili (binary) sonuçlar için tercih edilen bir yöntemdir ve olasılıkların tahmin edilmesinde kullanılır.</p>349  350  <h3>Kullanım Adımları:</h3></p>351  <ol>352    <li><strong>Veri Dosyası Yükleme:</strong> Lojistik regresyon analizi için bir CSV veya XLSX dosyasını <code>fileInput</code> aracılığıyla yükleyin.</li>353    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçimi:</strong> Analiz için kategorik hedef değişkeni ve bir veya birden fazla bağımsız değişkeni seçin.</li>354    <li><strong>Analizi Çalıştırma:</strong> <code>actionButton</code> butonlarına tıklayarak lojistik regresyon modelini ve varsayım kontrollerini çalıştırın.</li>355  </ol>356  357  <h3>Kullanıcı Etkileşimi:</h3> Kullanıcılar, dosya yükledikten ve gerekli değişkenleri seçtikten sonra analizi başlatır ve sonuçlar ana panelde görselleştirilir.</p>358  359  <h3>Veri Bilimi Alanındaki Kullanımı:</h3> Lojistik regresyon, sınıflandırma, olasılık tahmini ve risk faktörlerinin incelenmesi gibi çeşitli alanlarda kullanılır. Özellikle, kategorik sonuçların (örneğin, evet/hayır, başarılı/başarısız) olasılıklarının tahmin edilmesinde tercih edilen bir yöntemdir.</p>360  361  <h3>Desteklenen Dosya Tipleri:</h3> Kullanıcılar, analiz için CSV (.csv) veya Excel (.xlsx) formatında dosyalar yükleyebilirler.</p>362  363  <h3>Sonuçların Yorumlanması:</h3> Elde edilen model özeti, regresyon katsayıları, p-değerleri, ROC eğrisi gibi istatistiklerle modelin anlamlılığını ve performansını değerlendirir. Ayrıca, varsayım testleri modelin varsayımlara uygunluğunu kontrol etmek için kullanılır.</p>364  365  <ul>366    <li><strong>Model Özeti:</strong> Modelin istatistiksel anlamlılığını ve performansını değerlendirir.</li>367    <li><strong>Varsayım Testleri:</strong> Modelin normal dağılım, homoskedastisite, bağımsızlık gibi temel varsayımlara uygunluğunu test eder.</li>368    <li><strong>ROC Eğrisi:</strong> Modelin sınıflandırma performansını değerlendirir ve AUC (Alan Altında Kalan Alan) değeri ile modelin ayırt edici gücünü gösterir.</li>369  </ul>370  371  <p>Bu özellikler, lojistik regresyon analizinin, veri setinden derinlemesine içgörüler elde etmek ve kategorik sonuçların olasılıklarını tahmin etmek için nasıl kullanılabileceğini gösterir.</p>372</div>373")374                     ),375                     376                     mainPanel(377                       tabsetPanel(378                         tabPanel("Data Summary", verbatimTextOutput("dataSummary")),379                         tabPanel("Assumptions for Model", verbatimTextOutput("glmassumption")),380                         tabPanel("Logistic Regression Output", verbatimTextOutput("logisticOutput")),381                         tabPanel("Cross Validation GLM Output", plotlyOutput("glmcvplot")),382                         tabPanel("Area Under the Curve Plot", plotlyOutput("glmaucplot"))383                       )384                     )385                   )386          ),387          tabPanel("Decision Tree",388                   sidebarLayout(389                     sidebarPanel(390                       fileInput("treedecfile", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),391                       selectInput("targetdectree", "Select Target Column", choices = NULL),392                       sliderInput("dataSplittree", 393                                   "Data Split Ratio",394                                   min = 0.1,395                                   max = 0.9,396                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing397                                   step = 0.05,398                                   ticks = FALSE,399                                   animate = TRUE),400                       actionButton("rundectree", "Run Prior Steps"),401                       HTML("<div>402  <h2>Karar Ağacı Paneli</h2>403  404  <h3>Çıktı Nedir ve Neden Kullanılır?</h3> Bu panel, sınıflandırma ve regresyon problemleri için karar ağacı modellemesi yapar. Karar ağacı, veri setindeki özelliklerin farklı kombinasyonlarını kullanarak sonuçları tahmin eder ve bu tahminlerin nasıl yapıldığını açıklayabilir bir şekilde görselleştirir.</p>405  406  <h3>Kullanım Adımları:</h3></p>407  <ol>408    <li><strong>Veri Dosyası Yükleme:</strong> Karar ağacı modellemesi için bir CSV veya XLSX dosyasını <code>fileInput</code> aracılığıyla yükleyin.</li>409    <li><strong>Hedef Değişken Seçimi:</strong> Modelde tahmin edilecek hedef değişkeni seçin.</li>410    <li><strong>Modellemeyi Çalıştırma:</strong> <code>actionButton</code> butonuna tıklayarak karar ağacı modellemesini ve ilgili ön adımları çalıştırın.</li>411  </ol>412  413  <h3>Kullanıcı Etkileşimi:</h3> Kullanıcılar, dosya yükledikten ve hedef değişkeni seçtikten sonra modellemeyi başlatır ve sonuçlar ana panelde görselleştirilir.</p>414  415  <h3>Veri Bilimi Alanındaki Kullanımı:</h3> Karar ağacı, sınıflandırma ve regresyon problemlerinde yaygın olarak kullanılan bir yöntemdir. Ağaç yapısı, modelin kararlarını ve tahminlerini açıklayıcı bir şekilde sunar, bu da modelin yorumlanabilirliğini artırır.</p>416  417  <h3>Desteklenen Dosya Tipleri:</h3> Kullanıcılar, analiz için CSV (.csv) veya Excel (.xlsx) formatında dosyalar yükleyebilirler.</p>418  419  <h3>Sonuçların Yorumlanması:</h3> Elde edilen karar ağacı modeli, veri setindeki özelliklerin nasıl birleştirildiğini ve sonuçların nasıl tahmin edildiğini gösterir. Model özeti, karar ağacının performansını ve doğruluğunu değerlendirir. Ayrıca, ağacın budanması ve çapraz doğrulama gibi tekniklerle modelin genelleştirilmesi incelenir.</p>420  421  <ul>422    <li><strong>Model Özeti:</strong> Modelin performansını ve doğruluğunu değerlendirir.</li>423    <li><strong>Karar Ağacı Görselleştirme:</strong> Karar ağacının nasıl yapılandırıldığını ve tahminlerin nasıl yapıldığını görsel olarak sunar.</li>424    <li><strong>Çapraz Doğrulama:</strong> Modelin farklı veri setleri üzerindeki performansını test eder ve genelleştirme yeteneğini değerlendirir.</li>425    <li><strong>Karışıklık Matrisi:</strong> Modelin sınıflandırma performansını detaylı bir şekilde gösterir.</li>426  </ul>427  428  <p>Bu özellikler, karar ağacı modellemesinin, veri setinden derinlemesine içgörüler elde etmek ve tahminler yapmak için nasıl kullanılabileceğini gösterir.</p>429</div>430")431                     ),432                     433                     mainPanel(434                       tabsetPanel(435                         tabPanel("Finding Right Model",436                                  tabsetPanel(437                                    tabPanel("Data Summary", verbatimTextOutput("dataSummarydt")),438                                    tabPanel("Run First Model", verbatimTextOutput("rundectree")),439                                    tabPanel("Before Pruning Model's Plot", plotOutput("dectreeplot", width = "100%", height = "750px")),440                                    tabPanel("Cross-validation Plot", plotOutput("cvplot", width = "100%", height = "750px")),441                                    tabPanel("Confusion Matrix", verbatimTextOutput("confMatrix")),442                                    tabPanel("Pruned Tree", plotOutput("pruneddtree", width = "100%", height = "725px")),443                                  )444                         ),445                         tabPanel("Decision Tree Model Evaluation",446                                  tabsetPanel(447                                    tabPanel("Model Evaluation", verbatimTextOutput("cfdtpteva")),448                                  ))449                       )450                     ),451                   )452          ),453          tabPanel("Random Forest",454                   sidebarLayout(455                     sidebarPanel(456                       fileInput("rfinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),457                       actionButton("loadrf", "Load Data"),458                       selectInput("targetrf", "Select Target Column", choices = NULL),459                       selectizeInput("independentVarrf", "Select Independent Variables", choices = NULL, multiple = TRUE),460                       sliderInput("dataSplitrf", 461                                   "Data Split Ratio",462                                   min = 0.1,463                                   max = 0.9,464                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing465                                   step = 0.05,466                                   ticks = FALSE,467                                   animate = TRUE),468                       numericInput("mtryInput", "Mtry Value", value = 3, min = 1),469                       numericInput("ntreeInput", "Ntree Value", value = 14, min = 1),470                       actionButton("runrf", "Run Prior Steps"),471                       actionButton("predictBtn", "Predict"),472                       HTML("<div>473  <h2>Rastgele Orman Paneli</h2>474  475  <h3>Çıktı Nedir ve Neden Kullanılır?</h3> Bu panel, sınıflandırma ve regresyon problemleri için rastgele orman modellemesi yapar. Rastgele orman, birden fazla karar ağacını birleştirerek oluşturulan bir topluluk öğrenme yöntemidir. Bu yöntem, modelin genel hatası üzerindeki varyansı azaltır ve aşırı uyuma karşı dirençli olmasını sağlar.</p>476  477  <h3>Kullanım Adımları:</h3></p>478  <ol>479    <li><strong>Veri Dosyası Yükleme:</strong> Rastgele orman modellemesi için bir CSV veya XLSX dosyasını <code>fileInput</code> aracılığıyla yükleyin.</li>480    <li><strong>Hedef Değişken ve Bağımsız Değişkenler Seçimi:</strong> Modelde tahmin edilecek hedef değişkeni ve kullanılacak bağımsız değişkenleri seçin.</li>481    <li><strong>Model Parametreleri Ayarlama:</strong> Modelin <code>mtry</code> ve <code>ntree</code> değerlerini ayarlayın.</li>482    <li><strong>Modellemeyi Çalıştırma:</strong> <code>actionButton</code> butonlarına tıklayarak rastgele orman modellemesini ve tahmin işlemini çalıştırın.</li>483  </ol>484  485  <h3>Kullanıcı Etkileşimi:</h3> Kullanıcılar, dosya yükledikten, değişkenleri seçtikten ve model parametrelerini ayarladıktan sonra modellemeyi başlatır ve sonuçlar ana panelde görselleştirilir.</p>486  487  <h3>Veri Bilimi Alanındaki Kullanımı:</h3> Rastgele orman, sınıflandırma ve regresyon gibi çeşitli makine öğrenmesi problemlerinde kullanılır. Modelin oluşturduğu birden fazla karar ağacının sonuçlarını birleştirerek daha doğru tahminler yapılmasını sağlar.</p>488  489  <h3>Desteklenen Dosya Tipleri:</h3> Kullanıcılar, analiz için CSV (.csv) veya Excel (.xlsx) formatında dosyalar yükleyebilirler.</p>490  491  <h3>Sonuçların Yorumlanması:</h3> Elde edilen rastgele orman modeli, bağımsız değişkenlerin hedef değişken üzerindeki etkilerini ve önem derecelerini gösterir. Model özeti, rastgele ormanın performansını ve doğruluğunu değerlendirir. Ayrıca, modelin tahminlerini ve bu tahminlerin gerçek değerlerle karşılaştırılmasını içeren görselleştirmeler sunar.</p>492  493  <ul>494    <li><strong>Model Özeti:</strong> Modelin performansını ve doğruluğunu değerlendirir.</li>495    <li><strong>Özellik Önemi:</strong> Bağımsız değişkenlerin model üzerindeki etkisinin ve öneminin değerlendirilmesi.</li>496    <li><strong>Model Tahminleri:</strong> Modelin tahmin ettiği sonuçlar ve bu tahminlerin gerçek değerlerle karşılaştırılması.</li>497  </ul>498  499  <p>Bu özellikler, rastgele orman modellemesinin, veri setinden derinlemesine içgörüler elde etmek ve tahminler yapmak için nasıl kullanılabileceğini gösterir.</p>500</div>501")502                     ),503                     mainPanel(504                       tabsetPanel(505                         tabPanel("Data Summary", verbatimTextOutput("dataSummaryrf")),506                         tabPanel("Run First Model", verbatimTextOutput("runrf")),507                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlot", width = "100%", height = "625px")),508                         tabPanel("Model Prediction",509                                  tabsetPanel(510                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutput")),511                                    tabPanel("Predicted Plot", plotlyOutput("performancePlot", width = "100%", height = "625px"))512                                  )513                         )514                       )515                       516                     )517                   )518          ),519          tabPanel("Bagging",520                   sidebarLayout(521                     sidebarPanel(522                       fileInput("bginput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),523                       actionButton("loadbg", "Load Data"),524                       selectInput("targetbg", "Select Target Column", choices = NULL),525                       selectizeInput("independentVarbg", "Select Independent Variables", choices = NULL, multiple = TRUE),526                       sliderInput("dataSplitbg", 527                                   "Data Split Ratio",528                                   min = 0.1,529                                   max = 0.9,530                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing531                                   step = 0.05,532                                   ticks = FALSE,533                                   animate = TRUE),534                       numericInput("nbaggInput", "Nbagg Value", value = 14, min = 1),535                       actionButton("runbg", "Run Prior Steps"),536                       actionButton("baggingBtn", "Predict"),537                       HTML("<div>538  <h2>Çanta (Bagging) Paneli</h2>539  540  <h3>Çıktı Nedir ve Neden Kullanılır?</h3>541  <p>Bu panel, çok sayıda karar ağacı modelini birleştirerek güçlü bir makine öğrenimi modeli oluşturan çanta (bagging) yöntemini kullanır. Çanta yöntemi, modelin genel hatasını azaltarak ve aşırı uyum (overfitting) riskini minimize ederek tahminlerin doğruluğunu artırır.</p>542  543  <h3>Kullanım Adımları:</h3>544  <ol>545    <li><strong>Veri Dosyası Yükleme:</strong> CSV veya XLSX formatında bir dosya yükleyerek analize başlayın.</li>546    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçilmesi:</strong> Modelde kullanılacak hedef ve bağımsız değişkenleri seçin.</li>547    <li><strong>Model Parametrelerinin Ayarlanması:</strong> Modelin performansını etkileyen parametreleri (örneğin, çanta iterasyon sayısı) ayarlayın.</li>548    <li><strong>Modelin Eğitilmesi ve Tahmin Yapılması:</strong> Modeli eğitin ve test veri seti üzerinde tahminlerde bulunun.</li>549  </ol>550  551  <h3>Kullanıcı Etkileşimi:</h3>552  <p>Kullanıcılar, veri setini yükledikten ve gerekli seçimleri yaptıktan sonra, modeli eğitmek ve tahminler yapmak için belirtilen butonlara tıklar. Sonuçlar, ana panelde görselleştirilir ve detaylı analizler sunulur.</p>553  554  <h3>Veri Bilimi ve Makine Öğrenmesindeki Uygulamaları:</h3>555  <p>Çanta yöntemi, hem sınıflandırma hem de regresyon problemleri için yaygın olarak kullanılan bir topluluk öğrenme yöntemidir. Bu yöntem, veri setlerinden elde edilen bilgiyi maksimize eder ve modelin genel performansını iyileştirir.</p>556  557  <h3>Desteklenen Dosya Tipleri ve Seçenekler:</h3>558  <p>Panel, kullanıcıların CSV (.csv) veya Excel (.xlsx) formatındaki dosyaları yüklemesine izin verir. Bu, veri bilimcilerin ve analistlerin çeşitli veri setleri üzerinde çalışabilmesi için esneklik sağlar.</p>559  560  <h3>Sonuçların Yorumlanması:</h3>561  <p>Modelin performansı, çeşitli metrikler kullanılarak değerlendirilir. Özellik önem dereceleri, hangi değişkenlerin model tahminlerini en çok etkilediğini gösterir. Ayrıca, tahmin edilen sonuçlar ve modelin genel doğruluğu hakkında bilgiler sunulur.</p>562  563  <ul>564    <li><strong>Model Özeti:</strong> Modelin performans metrikleri ve ayarlanan parametreler hakkında bilgi verir.</li>565    <li><strong>Özellik Önemi:</strong> Model tahminlerinde hangi bağımsız değişkenlerin önemli olduğunu gösterir.</li>566    <li><strong>Tahmin Sonuçları:</strong> Modelin test veri seti üzerinde yaptığı tahminler ve bu tahminlerin gerçek değerlerle karşılaştırılması.</li>567  </ul>568  569  <p>Bu özellikler, çanta yönteminin veri setlerinden maksimum bilgiyi çıkararak tahminlerin doğruluğunu artırma potansiyelini gösterir.</p>570</div>")571                     ),572                     mainPanel(573                       tabsetPanel(574                         tabPanel("Data Summary", verbatimTextOutput("dataSummarybg")),575                         tabPanel("Run First Model", verbatimTextOutput("runbg")),576                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlotbg", width = "100%", height = "625px")),577                         tabPanel("Model Prediction",578                                  tabsetPanel(579                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutputbg")),580                                    tabPanel("Predicted Plot", plotlyOutput("performancePlotbg", width = "100%", height = "625px"))581                                  )582                         )583                       )584                       585                     )586                   )587          ),588          tabPanel("Boosting",589                   sidebarLayout(590                     sidebarPanel(591                       fileInput("bsinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),592                       actionButton("loadbs", "Load Data"),593                       selectInput("targetbs", "Select Target Column", choices = NULL),594                       selectizeInput("independentVarbs", "Select Independent Variables", choices = NULL, multiple = TRUE),595                       sliderInput("dataSplitbs", 596                                   "Data Split Ratio",597                                   min = 0.1,598                                   max = 0.9,599                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing600                                   step = 0.05,601                                   ticks = FALSE,602                                   animate = TRUE),603                       numericInput("nbsInput", "N Trees Value", value = 14, min = 1),604                       numericInput("nbsdepth", "Interaction Depth", value = 4, min = 1),605                       numericInput("nbshr", "Shrinkage", value = 0.03, min = 0.0001),606                       actionButton("runbs", "Run Prior Steps"),607                       actionButton("boostingBtn", "Predict"),608                       HTML("<div>609  <h2>Artırma (Boosting) Paneli</h2>610  611  <h3>Çıktı Nedir ve Neden Kullanılır?</h3>612  <p>Bu panel, zayıf öğrenicileri güçlü bir model oluşturmak üzere birleştiren artırma (boosting) yöntemini kullanır. Artırma, bir dizi zayıf modeli sıralı olarak eğitir ve her birini öncekinin hatalarını düzeltmeye odaklanır, böylece modelin genel performansı artar.</p>613  614  <h3>Kullanım Adımları:</h3>615  <ol>616    <li><strong>Veri Dosyası Yükleme:</strong> CSV veya XLSX formatında bir dosya yükleyerek analize başlayın.</li>617    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçilmesi:</strong> Modelde kullanılacak hedef ve bağımsız değişkenleri seçin.</li>618    <li><strong>Model Parametrelerinin Ayarlanması:</strong> Modelin performansını etkileyen parametreleri (örneğin, ağaç sayısı, etkileşim derinliği, küçültme) ayarlayın.</li>619    <li><strong>Modelin Eğitilmesi ve Tahmin Yapılması:</strong> Modeli eğitin ve test veri seti üzerinde tahminlerde bulunun.</li>620  </ol>621  622  <h3>Kullanıcı Etkileşimi:</h3>623  <p>Kullanıcılar, veri setini yükledikten ve gerekli seçimleri yaptıktan sonra, modeli eğitmek ve tahminler yapmak için belirtilen butonlara tıklar. Sonuçlar, ana panelde görselleştirilir ve detaylı analizler sunulur.</p>624  625  <h3>Veri Bilimi ve Makine Öğrenmesindeki Uygulamaları:</h3>626  <p>Artırma yöntemi, genellikle sınıflandırma ve regresyon problemlerinde kullanılır ve modelin aşırı uyuma (overfitting) eğilimini azaltırken tahmin doğruluğunu artırır.</p>627  628  <h3>Desteklenen Dosya Tipleri ve Seçenekler:</h3>629  <p>Panel, kullanıcıların CSV (.csv) veya Excel (.xlsx) formatındaki dosyaları yüklemesine izin verir. Bu, veri bilimcilerin ve analistlerin çeşitli veri setleri üzerinde çalışabilmesi için esneklik sağlar.</p>630  631  <h3>Sonuçların Yorumlanması:</h3>632  <p>Modelin performansı, çeşitli metrikler kullanılarak değerlendirilir. Özellik önem dereceleri, hangi değişkenlerin model tahminlerini en çok etkilediğini gösterir. Ayrıca, tahmin edilen sonuçlar ve modelin genel doğruluğu hakkında bilgiler sunulur.</p>633  634  <ul>635    <li><strong>Model Özeti:</strong> Modelin performans metrikleri ve ayarlanan parametreler hakkında bilgi verir.</li>636    <li><strong>Özellik Önemi:</strong> Model tahminlerinde hangi bağımsız değişkenlerin önemli olduğunu gösterir.</li>637    <li><strong>Tahmin Sonuçları:</strong> Modelin test veri seti üzerinde yaptığı tahminler ve bu tahminlerin gerçek değerlerle karşılaştırılması.</li>638  </ul>639  640  <p>Bu özellikler, artırma yönteminin veri setlerinden maksimum bilgiyi çıkararak tahminlerin doğruluğunu artırma potansiyelini gösterir.</p>641</div>")642                     ),643                     mainPanel(644                       tabsetPanel(645                         tabPanel("Data Summary", verbatimTextOutput("dataSummarybs")),646                         tabPanel("Run First Model", verbatimTextOutput("runbs")),647                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlotbs", width = "100%", height = "625px")),648                         tabPanel("Model Prediction",649                                  tabsetPanel(650                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutputbs")),651                                    tabPanel("Predicted Plot", plotlyOutput("performancePlotbs", width = "100%", height = "625px"))652                                  )653                         )654                       )655                       656                     )657                   )658          ),659          tabPanel("MARS",660                   sidebarLayout(661                     sidebarPanel(662                       fileInput("msinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),663                       actionButton("loadms", "Load Data"),664                       selectInput("targetms", "Select Target Column", choices = NULL),665                       selectizeInput("independentVarms", "Select Independent Variables", choices = NULL, multiple = TRUE),666                       sliderInput("dataSplitms", 667                                   "Data Split Ratio",668                                   min = 0.1,669                                   max = 0.9,670                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing671                                   step = 0.05,672                                   ticks = FALSE,673                                   animate = TRUE),674                       actionButton("runms", "Run Prior Steps"),675                       actionButton("marsBtn", "Predict"),676                       HTML("<div>677  <h2>MARS Paneli</h2>678  679  <h3>Çıktı Nedir ve Neden Kullanılır?</h3>680  <p>Bu panel, Çoklu Adaptif Regresyon Spline'ları (MARS) kullanarak veri setinden karmaşık ilişkileri ve etkileşimleri yakalayabilen bir model oluşturur. MARS, lineer olmayan ilişkileri ve değişkenler arasındaki etkileşimleri otomatik olarak tanımlayabilen esnek bir yöntemdir.</p>681  682  <h3>Kullanım Adımları:</h3>683  <ol>684    <li><strong>Veri Dosyası Yükleme:</strong> Analize başlamak için CSV veya XLSX formatında bir dosya yükleyin.</li>685    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçilmesi:</strong> Modelde kullanılacak hedef ve bağımsız değişkenleri belirleyin.</li>686    <li><strong>Veri Bölme Oranının Ayarlanması:</strong> Modelin eğitim ve test veri setlerine bölünme oranını ayarlayın.</li>687    <li><strong>Modelin Eğitilmesi ve Değerlendirilmesi:</strong> Modeli eğitip performansını değerlendirin. Modelin doğruluğunu ve bağımsız değişkenlerin önemini inceleyin.</li>688  </ol>689  690  <h3>Kullanıcı Etkileşimi:</h3>691  <p>Kullanıcılar, analiz için gerekli veri ve parametreleri girer ve modeli eğitmek için belirtilen adımları takip eder. Sonuçlar, kullanıcıya modelin performansı ve değişkenlerin önemi hakkında detaylı bilgiler sunar.</p>692  693  <h3>Veri Bilimi ve Makine Öğrenmesindeki Uygulamaları:</h3>694  <p>MARS yöntemi, özellikle karmaşık ilişkilerin ve değişken etkileşimlerinin olduğu durumlarda tercih edilen bir modelleme tekniğidir. Hem sınıflandırma hem de regresyon problemleri için uygundur.</p>695  696  <h3>Desteklenen Dosya Tipleri ve Seçenekler:</h3>697  <p>Panel, kullanıcıların analiz için CSV (.csv) veya Excel (.xlsx) formatlarında veri dosyaları yüklemesine olanak tanır, bu da farklı veri setleri üzerinde çalışmayı kolaylaştırır.</p>698  699  <h3>Sonuçların Yorumlanması:</h3>700  <p>Modelin performansı, çeşitli metrikler kullanılarak değerlendirilir. Bağımsız değişkenlerin model üzerindeki etkisi, özellik önem dereceleriyle gösterilir. Ayrıca, modelin genel doğruluğu ve tahmin edilen sonuçlar hakkında bilgiler sağlanır.</p>701  702  <ul>703    <li><strong>Model Özeti:</strong> Modelin performans metrikleri ve ayarlanan parametreler hakkında bilgi sağlar.</li>704    <li><strong>Özellik Önemi:</strong> Hangi bağımsız değişkenlerin model tahminlerini en çok etkilediğini gösterir.</li>705    <li><strong>Tahmin Sonuçları:</strong> Modelin test veri seti üzerinde yaptığı tahminler ve bu tahminlerin gerçek değerlerle karşılaştırılması.</li>706  </ul>707  708  <p>Bu panel, MARS modelinin veri setlerinden karmaşık ilişkileri çıkararak tahminlerin doğruluğunu artırma potansiyeline sahip olduğunu gösterir.</p>709</div>")710                     ),711                     mainPanel(712                       tabsetPanel(713                         tabPanel("Data Summary", verbatimTextOutput("dataSummaryms")),714                         tabPanel("Run First Model", verbatimTextOutput("runms")),715                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlotms", width = "100%", height = "625px")),716                         tabPanel("Model Prediction",717                                  tabsetPanel(718                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutputms")),719                                    tabPanel("Predicted Plot", plotlyOutput("performancePlotms", width = "100%", height = "625px"))720                                  )721                         )722                       )723                       724                     )725                   )726          ),727          tabPanel("Ridge Regression",728                   sidebarLayout(729                     sidebarPanel(730                       fileInput("rrinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),731                       actionButton("loadrr", "Load Data"),732                       selectInput("targetrr", "Select Target Column", choices = NULL),733                       selectizeInput("independentVarrr", "Select Independent Variables", choices = NULL, multiple = TRUE),734                       sliderInput("dataSplitrr", 735                                   "Data Split Ratio",736                                   min = 0.1,737                                   max = 0.9,738                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing739                                   step = 0.05,740                                   ticks = FALSE,741                                   animate = TRUE),742                       actionButton("runrr", "Run Prior Steps"),743                       actionButton("RidgeBtn", "Predict"),744                       HTML("<div>745  <h2>Ridge Regresyon Paneli</h2>746  747  <h3>Çıktı Nedir ve Neden Kullanılır?</h3>748  <p>Ridge Regresyonu, çoklu doğrusal regresyon modellerinde aşırı uyumun önlenmesine yardımcı olan bir düzenlileştirme tekniğidir. Bu panel, yüksek boyutlu veri setlerinde bile değişkenler arası ilişkileri daha iyi anlamak için Ridge Regresyon modelini kullanır.</p>749  750  <h3>Kullanım Adımları:</h3>751  <ol>752    <li><strong>Veri Dosyası Yükleme:</strong> Analize başlamak için uygun bir CSV veya XLSX dosyası yükleyin.</li>753    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçimi:</strong> Modelde hedef değişken olarak neyin tahmin edileceğini ve hangi bağımsız değişkenlerin kullanılacağını seçin.</li>754    <li><strong>Veri Bölme Oranı Ayarlama:</strong> Veri setinin eğitim ve test seti olarak nasıl bölüneceğini belirleyin.</li>755    <li><strong>Model Eğitimi ve Değerlendirme:</strong> Modeli eğitin ve performansını değerlendirin. Modelin nasıl performans gösterdiğini ve hangi değişkenlerin önemli olduğunu öğrenin.</li>756  </ol>757  758  <h3>Kullanıcı Etkileşimi:</h3>759  <p>Kullanıcılar, panel aracılığıyla veri setlerini yükleyebilir, model parametrelerini ayarlayabilir ve modelin performansını değerlendirme sonuçlarını görüntüleyebilir. Bu süreç, veri bilimi projelerinde kritik öneme sahip olan modelleme ve analiz işlemlerini kolaylaştırır.</p>760  761  <h3>Veri Bilimi ve Makine Öğrenmesindeki Uygulamaları:</h3>762  <p>Ridge Regresyonu, özellikle çok sayıda özellik içeren veri setlerinde ve değişkenler arasında yüksek korelasyon olduğunda kullanışlıdır. Model karmaşıklığını kontrol ederek aşırı uyumu azaltır ve modelin genelleştirme yeteneğini artırır.</p>763  764  <h3>Desteklenen Dosya Tipleri ve Seçenekler:</h3>765  <p>Panel, CSV (.csv) ve Excel (.xlsx) formatlarındaki veri dosyalarını destekler, bu da kullanıcıların çeşitli veri kaynaklarından kolayca veri yüklemesine olanak tanır.</p>766  767  <h3>Sonuçların Yorumlanması:</h3>768  <p>Modelin başarısı, RMSE, R-kare gibi metriklerle değerlendirilir. Ayrıca, değişkenlerin model üzerindeki etkisi ve önemi hakkında bilgiler sunulur, bu da hangi özelliklerin hedef değişkeni en çok etkilediğini anlamaya yardımcı olur.</p>769  770  <ul>771    <li><strong>Model Özeti:</strong> Modelin ayar parametreleri, performans metrikleri ve doğrulama sonuçları hakkında ayrıntılı bilgi sağlar.</li>772    <li><strong>Özellik Önemi:</strong> Model tahminlerinde hangi bağımsız değişkenlerin daha etkili olduğunu gösterir.</li>773    <li><strong>Tahmin Sonuçları:</strong> Modelin test veri seti üzerindeki tahminleri ve bu tahminlerin gerçek değerlerle olan karşılaştırması.</li>774  </ul>775  776  <p>Ridge Regresyon paneli, modelin veri setindeki özellikler arasındaki karmaşık ilişkileri nasıl yakaladığını ve tahminlerin doğ777 778ruluğunu nasıl artırdığını gösterir.</p>779</div>")780                     ),781                     mainPanel(782                       tabsetPanel(783                         tabPanel("Data Summary", verbatimTextOutput("dataSummaryrr")),784                         tabPanel("Run First Model", verbatimTextOutput("runrr")),785                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlotrr", width = "100%", height = "625px")),786                         tabPanel("Model Prediction",787                                  tabsetPanel(788                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutputrr")),789                                    tabPanel("Predicted Plot", plotlyOutput("performancePlotrr", width = "100%", height = "625px"))790                                  )791                         )792                       )793                       794                     )795                   )796          ),797          tabPanel("LASSO Regression",798                   sidebarLayout(799                     sidebarPanel(800                       fileInput("lsinput", "Choose a CSV or XLSX file", accept = c(".csv", ".xlsx")),801                       actionButton("loadls", "Load Data"),802                       selectInput("targetls", "Select Target Column", choices = NULL),803                       selectizeInput("independentVarls", "Select Independent Variables", choices = NULL, multiple = TRUE),804                       sliderInput("dataSplitls", 805                                   "Data Split Ratio",806                                   min = 0.1,807                                   max = 0.9,808                                   value = 0.7,  # Default value, for instance, 70% for training and 30% for testing809                                   step = 0.05,810                                   ticks = FALSE,811                                   animate = TRUE),812                       actionButton("runls", "Run Prior Steps"),813                       actionButton("LassoBtn", "Predict"),814                       HTML("<div>815  <h2>LASSO Regresyon Paneli</h2>816  817  <h3>Çıktı Nedir ve Neden Kullanılır?</h3>818  <p>LASSO Regresyonu, özellik seçimi ve düzenlileştirme sağlayarak modelin karmaşıklığını azaltır ve genelleştirme kabiliyetini artırır. Bu panel, veri setlerindeki değişkenler arasındaki ilişkileri anlamak ve önemli özellikleri belirlemek için LASSO Regresyon modelini kullanır.</p>819  820  <h3>Kullanım Adımları:</h3>821  <ol>822    <li><strong>Veri Dosyası Yükleme:</strong> Analize başlamak için bir CSV veya XLSX dosyası yükleyin.</li>823    <li><strong>Hedef ve Bağımsız Değişkenlerin Seçimi:</strong> Modelin neyi tahmin edeceğini ve hangi bağımsız değişkenlerin kullanılacağını seçin.</li>824    <li><strong>Veri Bölme Oranı Ayarlama:</strong> Eğitim ve test setlerinin nasıl bölüneceğini belirleyin.</li>825    <li><strong>Model Eğitimi ve Değerlendirme:</strong> Modeli eğitin, performansını değerlendirin ve önemli özellikleri keşfedin.</li>826  </ol>827  828  <h3>Kullanıcı Etkileşimi:</h3>829  <p>Kullanıcılar, veri setlerini yükleyebilir, model parametrelerini ayarlayabilir ve modelin nasıl performans gösterdiğini anlayabilir. Panel, modelleme ve analiz işlemlerini kolaylaştırarak veri bilimi projelerinde değerli bir araç sunar.</p>830  831  <h3>Veri Bilimi ve Makine Öğrenmesindeki Uygulamaları:</h3>832  <p>LASSO Regresyonu, özellikle çok sayıda özelliği olan ve değişkenler arasında yüksek korelasyon bulunan veri setlerinde kullanışlıdır. Model, önemsiz özellikleri sıfıra yaklaştırarak özellik seçimi yapar ve daha anlamlı tahminler sağlar.</p>833  834  <h3>Desteklenen Dosya Tipleri ve Seçenekler:</h3>835  <p>Panel, CSV (.csv) ve Excel (.xlsx) formatlarını destekler, bu da kullanıcıların farklı veri kaynaklarından kolaylıkla veri yüklemesine olanak tanır.</p>836  837  <h3>Sonuçların Yorumlanması:</h3>838  <p>Modelin başarısı, RMSE, R-kare gibi metriklerle değerlendirilir. Ayrıca, modelin hangi değişkenleri önemli bulduğu ve tahminlerin doğruluğu hakkında bilgi sunulur.</p>839  840  <ul>841    <li><strong>Model Özeti:</strong> Modelin performans metrikleri, ayar parametreleri ve doğrulama sonuçları hakkında detaylı bilgiler sağlar.</li>842    <li><strong>Özellik Önemi:</strong> Model tahminlerinde hangi bağımsız değişkenlerin daha etkili olduğunu belirler.</li>843    <li><strong>Tahmin Sonuçları:</strong> Modelin test veri seti üzerindeki tahmin sonuçları ve bu tahminlerin gerçek değerlerle karşılaştırılması.</li>844  </ul>845  846  <p>LASSO Regresyon paneli, modelin veri setindeki özellikler arasındaki ilişkileri nasıl çözümlendiğini ve tahminlerin doğruluğunu nasıl artırdığını gösterir.</p>847</div>")848                     ),849                     mainPanel(850                       tabsetPanel(851                         tabPanel("Data Summary", verbatimTextOutput("dataSummaryls")),852                         tabPanel("Run First Model", verbatimTextOutput("runls")),853                         tabPanel("Feature Importance Plot", plotlyOutput("importancePlotls", width = "100%", height = "625px")),854                         tabPanel("Model Prediction",855                                  tabsetPanel(856                                    tabPanel("Predicted Result", verbatimTextOutput("predictionOutputls")),857                                    tabPanel("Predicted Plot", plotlyOutput("performancePlotls", width = "100%", height = "625px"))858                                  )859                         )860                       )861                       862                     )863                   )864          )865          866        )867 868)869 870server <- function(input, output, session) {871 872  ##Supervised Learning873  ###Simple Linear Regression874  # Define reactive values for each assumption test875  shapiroTestResult <- reactiveVal()876  ncvTestResult <- reactiveVal()877  linearityPlot <- reactiveVal()878  durbinWatsonTestResult <- reactiveVal()879  modelslr <- reactiveVal()880  dataslr <- reactiveVal(NULL)881  modelslreva <- reactiveVal(NULL)882  dataslreva <- reactiveVal(NULL)883  # Fix the data loading and cleaning part884  observeEvent(input$loadslr, {885    file <- input$slrinput886    if (!is.null(file)) {887      data_slr <- read_data(file$datapath)888      data_slr <- clean_column_names(data_slr)889      dataslr(data_slr)  # Update the reactive value correctly890      updateSelectInput(session, "targetslr", choices = colnames(data_slr))891      updateSelectizeInput(session, "independentVar", choices = setdiff(colnames(data_slr), input$targetslr))892    }893  })894  895  output$slrsummary <- renderPrint({896    req(dataslr())897    summary(dataslr())898  })899  900  # Observe the action button for triggering assumption tests901  observeEvent(input$slrassumption, {902    req(dataslr(), input$targetslr, input$independentVar)903    data_slr <- dataslr()904    target_col <- input$targetslr905    independent_var <- input$independentVar906    907    # Ensure the target and independent variables are available908    if (is.null(data_slr[[target_col]]) || is.null(data_slr[[independent_var]])) {909      return("Target or independent variable not found in the data.")910    }911    912    # Filter out rows where any character column is an empty string913    data_slr <- data_slr %>% dplyr::select(all_of(target_col), all_of(independent_var)) %>%914      na.omit()915    916    # Split the data into training and testing sets917    set.seed(123)918    split_ratio <- input$dataSplitslr919    training.samples <- createDataPartition(data_slr[[target_col]], p = split_ratio, list = FALSE)920    train_data <- data_slr[training.samples, ]921    test_data <- data_slr[-training.samples, ]922    923    # Fit the linear regression model924    fitted_model <- lm(reformulate(independent_var, target_col), data = train_data)925    modelslr(fitted_model)  # Update the reactive value926    927    # Print the summary of the model928    summary(fitted_model)929  })930  931  output$shapiroTest <- renderPrint({932    req(dataslr(), input$targetslr, input$independentVar)933    data_slr <- dataslr()934    target_col <- input$targetslr935    independent_var <- input$independentVar936    # Ensure the target and independent variables are available937    if (is.null(data_slr[[target_col]]) || is.null(data_slr[[independent_var]])) {938      return("Target or independent variable not found in the data.")939    }940    941    # Filter out rows where any character column is an empty string942    data_slr <- data_slr %>% dplyr::select(all_of(target_col), all_of(independent_var)) %>%943      na.omit()944    945    # Split the data into training and testing sets946    set.seed(123)947    split_ratio <- input$dataSplitslr948    training.samples <- createDataPartition(data_slr[[target_col]], p = split_ratio, list = FALSE)949    train_data <- data_slr[training.samples, ]950    test_data <- data_slr[-training.samples, ]951    952    # Fit the linear regression model953    fitted_model <- lm(reformulate(independent_var, target_col), data = train_data)954    modelslr(fitted_model)  # Update the reactive value955    956    # Print the summary of the model957    summary(fitted_model)958    # Shapiro-Wilk Test for Normality959    cat("\nShapiro-Wilk Test for Normality of Residuals:\n")960    shap_Test <- shapiro.test(fitted_model$residuals)961    print(shap_Test)962    if (shap_Test$p.value > 0.05) {963      cat("Result: Residuals appear to be normally distributed.\n")964    } else {965      cat("Result: Residuals may not be normally distributed.\n")966    }967  })968  969  970  output$ncvTest <- renderPrint({971    req(modelslr())  # Ensure modelslr is available972    fitted_model <- modelslr()  # Access the model973    974    # Perform Breusch-Pagan Test for Heteroscedasticity975    cat("\nBreusch-Pagan Test for Heteroscedasticity:\n")976    bp_test_result <- tryCatch({977      bptest(fitted_model)978    }, error = function(e) {979      cat("Error in conducting Breusch-Pagan test: ", e$message, "\n")980      NULL  # Return NULL in case of error981    })982    983    if (!is.null(bp_test_result) && !is.na(bp_test_result$p.value)) {984      print(bp_test_result)985      if (bp_test_result$p.value > 0.05) {986        cat("Result: No evidence of heteroscedasticity.\n")987      } else {988        cat("Result: There may be heteroscedasticity.\n")989      }990    } else {991      cat("Result: Breusch-Pagan test could not be conducted.\n")992    }993  })994  995  output$linearityPlotOutput <- renderPlotly({996    req(dataslr(), input$targetslr, input$independentVar)997    data_slr <- dataslr()998    target_col <- input$targetslr999    independent_var <- input$independentVar1000    # Ensure the target and independent variables are available1001    if (is.null(data_slr[[target_col]]) || is.null(data_slr[[independent_var]])) {1002      return("Target or independent variable not found in the data.")1003    }1004    1005    # Filter out rows where any character column is an empty string1006    data_slr <- data_slr %>% dplyr::select(all_of(target_col), all_of(independent_var)) %>%1007      na.omit()1008    1009    # Split the data into training and testing sets1010    set.seed(123)1011    split_ratio <- input$dataSplitslr1012    training.samples <- createDataPartition(data_slr[[target_col]], p = split_ratio, list = FALSE)1013    train_data <- data_slr[training.samples, ]1014    test_data <- data_slr[-training.samples, ]1015    1016    # Fit the linear regression model1017    fitted_model <- lm(reformulate(independent_var, target_col), data = train_data)1018    # Create the ggplot object for the linearity plot1019    ggplot_object <- ggplot(train_data, aes_string(x = independent_var, y = target_col)) +1020      geom_point(color = "darkorange") +1021      geom_smooth(method = "lm", se = FALSE, color = "dodgerblue") +1022      ggtitle("Linearity") +1023      scale_x_continuous(name = independent_var) +1024      scale_y_continuous(name = target_col)1025    1026    # Convert ggplot object to plotly and render1027    ggplotly(ggplot_object)1028  })1029  1030  output$durbinWatsonTest <- renderPrint({1031    req(modelslr())  # Ensure modelslr is available1032    fitted_model <- modelslr()  # Access the model1033    1034    # Perform Durbin-Watson Test for Autocorrelation1035    dw_test_result <- tryCatch({1036      lmtest::dwtest(fitted_model)1037    }, error = function(e) {1038      cat("Error in conducting Durbin-Watson test: ", e$message, "\n")1039      NULL  # Return NULL in case of error1040    })1041    1042    if (!is.null(dw_test_result) && !is.na(dw_test_result$p.value)) {1043      cat("\nDurbin-Watson Test for Autocorrelation:\n")1044      print(dw_test_result)1045      if (dw_test_result$p.value > 0.05) {1046        cat("Result: No evidence of autocorrelation.\n")1047      } else {1048        cat("Result: There may be autocorrelation in the residuals.\n")1049      }1050    } else {1051      cat("Result: Durbin-Watson test could not be conducted.\n")1052    }1053  })1054  1055  # Server function to create diagnostic plots1056  output$residualsFittedPlot <- renderPlotly({1057    req(modelslr())1058    fitted_model <- modelslr()1059    1060    p <- ggplot(fitted_model, aes(.fitted, .resid)) +1061      geom_point(color = "darkorange") +1062      geom_smooth(method = "lm", se = FALSE, color = "dodgerblue") +1063      labs(title = "Residuals vs Fitted", x = "Fitted Values", y = "Residuals")1064    1065    ggplotly(p)1066  })1067  1068  output$qqPlot <- renderPlotly({1069    req(modelslr())1070    fitted_model <- modelslr()1071    1072    p <- ggplot(fitted_model, aes(sample = .stdresid)) +1073      stat_qq(color = "darkorange") +1074      stat_qq_line(color = "dodgerblue") +1075      labs(title = "Normal Q-Q")1076    1077    ggplotly(p)1078  })1079  1080  output$scaleLocationPlot <- renderPlotly({1081    req(modelslr())1082    fitted_model <- modelslr()1083    1084    p <- ggplot(fitted_model, aes(.fitted, sqrt(abs(.resid)))) +1085      geom_point(color = "darkorange") +1086      geom_smooth(method = "lm", se = FALSE, color = "dodgerblue") +1087      labs(title = "Scale-Location", x = "Fitted Values", y = "Sqrt(|Residuals|)")1088    1089    ggplotly(p)1090  })1091  1092  output$residualsLeveragePlot <- renderPlotly({1093    req(modelslr())1094    fitted_model <- modelslr()1095    1096    p <- ggplot(fitted_model, aes(.hat, .stdresid)) +1097      geom_point(aes(size = .cooksd), shape = 1, color = "darkorange") +1098      geom_smooth(method = "lm", se = FALSE, color = "dodgerblue") +1099      labs(title = "Residuals vs Leverage", x = "Leverage", y = "Standardized Residuals")1100    1101    ggplotly(p)1102  })1103  1104  1105  # Define the reactive value for the data and model at the top of the server function1106  dataslreva <- reactiveVal(NULL)1107  modelslreva <- reactiveVal(NULL)1108  test_data_slr <- reactiveVal(NULL)  1109  1110  # Load and clean data1111  observeEvent(input$loadslr, {1112    req(input$slrinput)1113    file <- input$slrinput1114    if (!is.null(file)) {1115      data_slreva <- read_data(file$datapath)1116      data_slreva <- clean_column_names(data_slreva)1117      dataslreva(data_slreva)  # Update the reactive value correctly1118      updateSelectInput(session, "targetslr", choices = colnames(data_slreva))1119      updateSelectizeInput(session, "independentVar", choices = setdiff(colnames(data_slreva), input$targetslr))1120    }1121  })1122  1123  observeEvent(input$slrmodel, {1124    req(dataslreva(), input$targetslr, input$independentVar)1125    data_slreva <- dataslreva()1126    target_col <- input$targetslr1127    independent_var <- input$independentVar1128    1129    # Ensure the target and independent variables are available1130    if (is.null(data_slreva[[target_col]]) || is.null(data_slreva[[independent_var]])) {1131      return("Target or independent variable not found in the data.")1132    }1133    1134    # Filter out rows with NAs and split the data1135    data_slreva <- na.omit(data_slreva[, c(target_col, independent_var)])1136    set.seed(123)1137    split_ratio <- input$dataSplitslr1138    training.samples <- createDataPartition(data_slreva[[target_col]], p = split_ratio, list = FALSE)1139    train_data <- data_slreva[training.samples, ]1140    test_data <- data_slreva[-training.samples, ]1141    1142    # Fit the linear regression model and update the reactive value1143    fitted_modelslr <- lm(reformulate(independent_var, target_col), data = train_data)1144    modelslreva(fitted_modelslr)1145    1146    # After fitting the model, update test_data_slr reactive value1147    test_data_slr(test_data)  # Store test_data in the reactive value1148  })1149  1150  output$slrmodeleva <- renderPrint({1151    req(modelslreva())1152    fitted_modelslr <- modelslreva()1153    1154    if (inherits(fitted_modelslr, "lm")) {1155      # Model Summary1156      cat("Model Summary:\n")1157      print(summary(fitted_modelslr))1158      1159      # Interpretation of the key components1160      cat("\nInterpretation:\n")1161      cat("1. Coefficients: Estimates of the model parameters.\n")1162      cat("   - Intercept: Represents the predicted value of the dependent variable when all independent variables are zero.\n")1163      cat("   - Slope: Represents the change in the dependent variable for a one-unit change in the independent variable.\n")1164      cat("2. Residual standard error: Measures the quality of the linear regression fit.\n")1165      cat("   - Lower values indicate a better fit.\n")1166      cat("3. Multiple R-squared: Indicates the proportion of variance in the dependent variable explained by the model.\n")1167      cat("   - Values closer to 1 suggest a better explanatory power of the model.\n")1168      cat("4. F-statistic and p-value: Test the overall significance of the model.\n")1169      cat("   - A low p-value (< 0.05) indicates that the model is statistically significant.\n")1170      1171      # Additional specific interpretations can be added here1172    } else {1173      "Model has not been run or is not a linear model."1174    }1175  })1176  1177  # Render print for correlation coefficient1178  output$corcoefslr <- renderPrint({1179    req(modelslreva(), test_data_slr())  # Ensure model and test data are available1180    fitted_modelslr <- modelslreva()1181    test_data <- test_data_slr()  # Access the test data1182    target_col <- input$targetslr1183    independent_var <- input$independentVar1184    1185    # Prediction and calculation of correlation coefficient1186    lm_predict <- predict(fitted_modelslr, newdata = test_data)1187    actual_pred <- data.frame(actuals = test_data[[target_col]], predicted = lm_predict)1188    cor_accuracy <- cor(actual_pred$actuals, actual_pred$predicted)1189    1190    # Output with interpretation1191    cat("Correlation Coefficient between Actual and Predicted Values:\n")1192    cat(cor_accuracy, "\n\n")1193    1194    # Interpretation of the correlation coefficient1195    cat("Interpretation:\n")1196    if(cor_accuracy > 0.75) {1197      cat("The model has a strong positive correlation between actual and predicted values.\n")1198    } else if(cor_accuracy > 0.5) {1199      cat("The model has a moderate positive correlation between actual and predicted values.\n")1200    } else if(cor_accuracy > 0.25) {

Showing the first 1,200 of 3864 lines. Download the file for the rest.