

{"id":4917,"date":"2018-01-13T13:06:57","date_gmt":"2018-01-13T13:06:57","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=4917"},"modified":"2021-08-25T17:25:44","modified_gmt":"2021-08-25T11:55:44","slug":"bootstrapping-in-r","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/","title":{"rendered":"Bootstrapping in R &#8211; Single guide for all concepts"},"content":{"rendered":"<p>In this tutorial, we will learn about working of bootstrapping in R. Along with this, we will cover bootstrap development and the pros and cons of bootstrapping in R in different areas. Also, we will see bootstrap examples and bootstrap package.<\/p>\n<p>So, let&#8217;s start the R bootstrapping tutorial.<\/p>\n<h2>What is Bootstrapping in R?<\/h2>\n<p><span style=\"font-weight: 400\">Bootstrapping in R is a very useful tool in statistics. Bootstrapping comes in handy whenever there is a doubt. It is a non-parametric method.<\/span><br \/>\n<b><\/b><\/p>\n<p>Generally, bootstrapping in R follows the same basic steps<span style=\"font-weight: 400\">:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400\">First, we resample a given data, set a specified number of times.<\/span><\/li>\n<li><span style=\"font-weight: 400\">Then, we will calculate a specific statistic from each sample.<\/span><\/li>\n<li><span style=\"font-weight: 400\">After that, find the standard deviation of the distribution of that statistic.<\/span><\/li>\n<\/ul>\n<h4>Non-parametric Bootstrapping in R<\/h4>\n<p><span style=\"font-weight: 400\">A package is presented \u201cboot package\u201d which provides extensive facilities. You can bootstrap a single statistic (e.g. a median), or a vector (e.g., regression weights).<\/span><\/p>\n<p><span style=\"font-weight: 400\">The main bootstrapping function is a boot( ) and has the following format:<\/span><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">bootobject &lt;- boot(data= , statistic= , R=, ...)<\/pre>\n<p><b>Parameter<\/b><span style=\"font-weight: 400\"> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span><b>Description<\/b><\/p>\n<p><span style=\"font-weight: 400\">Data \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0A vector, matrix, or data frame.<\/span><br \/>\n<span style=\"font-weight: 400\">Statistic \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0A function that produces the k statistics to be bootstrapped.<\/span><br \/>\n<span style=\"font-weight: 400\">R\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Number of bootstrap replicates.<\/span><\/p>\n<p>More parameters to be passed to the function that produces the statistic of interest.<\/p>\n<p><span style=\"font-weight: 400\">We use to boot( ) which calls the statistic function R times. The boot object structure includes:<\/span><br \/>\n<b><\/b><\/p>\n<p><b>Element\u00a0 \u00a0 \u00a0\u00a0<\/b><b>Description<\/b><\/p>\n<p><span style=\"font-weight: 400\">t<sub>0<\/sub>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 The observed values of k statistics applied to the original data.<\/span><br \/>\n<span style=\"font-weight: 400\">t\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 An R x k matrix where each row is a bootstrap replicate of the k statistics.<\/span><\/p>\n<p><em><strong>Gain expertise in all the <a href=\"https:\/\/data-flair.training\/blogs\/r-data-frame-introduction-operations\/\">Data Frame Operations of R<\/a><\/strong><\/em><\/p>\n<h4>Example of Bootstrapping<\/h4>\n<p>In this example of bootstrapping, we will implement the R package boot. We will perform bootstrapping on a single statistic (k = 1). And, we will make use of the dataset &#8211; \u2018mtcars\u2019.<\/p>\n<p>We will obtain a bootstrapped confidence interval of 95% for the R-squared in the linear regression relationship of miles per gallon variable (mpg) on car weight (wt) and its displacement (disp). This bootstrapped confidence interval is based on 1500 replications.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\"># Author DataFlair\r\nlibrary(boot)\r\n# Creating Function to obtain R-Squared from the data\r\nr_squared &lt;- function(formula, data, indices) {\r\nval &lt;- data[indices,] # selecting sample with boot \r\nfit &lt;- lm(formula, data=val)\r\nreturn(summary(fit)$r.square)\r\n} \r\n# Performing 1500 replications with boot \r\noutput &lt;- boot(data=mtcars, statistic=r_squared, \r\nR=1500, formula=mpg~wt+disp)\r\n\r\n# Plotting the output\r\noutput \r\nplot(output)\r\n\r\n# Obtaining a confidence interval of 95%\r\nboot.ci(output, type=\"bca\")<\/pre>\n<p><strong>Code Display:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example-.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-59693\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example-.jpg\" alt=\"Bootstrapping in R Example\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example-.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example--150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example--300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example--768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example--1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-Example--520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p>We obtain the following output in the Console window after the code is executed:<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-59694\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example.jpg\" alt=\"Console Output of Example\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Console-Output-of-Example-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<h3>Bootstrap Resampling<\/h3>\n<p><b>Usage<\/b><\/p>\n<p><span style=\"font-weight: 400\">boot(data, statistic, R, sim=&#8221;ordinary&#8221;, stype=&#8221;i&#8221;,<\/span><br \/>\n<span style=\"font-weight: 400\">strata=rep(1,n), L=NULL, m=0, weights=NULL,<\/span><br \/>\n<span style=\"font-weight: 400\">ran.gen=function(d, p) d, mle=NULL, &#8230;)<\/span><br \/>\n<b><\/b><\/p>\n<h4>Arguments<br \/>\n<b><\/b><\/h4>\n<p><b>1. data<\/b><\/p>\n<p><span style=\"font-weight: 400\">The data in the form of a vector, matrix or data frame. If we are using a matrix or data frame, then we can consider each row as one multivariate observation.<\/span><br \/>\n<b><\/b><\/p>\n<p><em><strong>Explore the <a href=\"https:\/\/data-flair.training\/blogs\/r-vector-types-and-operations\/\">vector types and operations in vector<\/a><\/strong><\/em><\/p>\n<p><b>2. statistic<\/b><\/p>\n<p><span style=\"font-weight: 400\">Whenever we are using sim=&#8221;parametric&#8221;, then the first argument to statistic must be the data.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>3. R<\/b><\/p>\n<p><span style=\"font-weight: 400\">It tells about the number of bootstrap replicates. Usually, this will be a single positive integer.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>4. sim<\/b><\/p>\n<p><span style=\"font-weight: 400\">A character string indicating the type of simulation required.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>5. stype<\/b><\/p>\n<p><span style=\"font-weight: 400\">A character string indicating representation of the second argument of statistic. Possible values of stype are &#8220;i&#8221; (indices &#8211; the default), &#8220;f&#8221; (frequencies), or &#8220;w&#8221; (weights).<\/span><br \/>\n<b><\/b><\/p>\n<p><b>6<\/b><b>. strata<\/b><\/p>\n<p><span style=\"font-weight: 400\">An integer vector or factor specifying the strata for multi-sample problems.<\/span><br \/>\n<b><\/b><\/p>\n<p><em><strong>Do you know about <a href=\"https:\/\/data-flair.training\/blogs\/r-factor-functions\/\">R Factor Functions<\/a><\/strong><\/em><\/p>\n<p><b>7. l<\/b><\/p>\n<p><span style=\"font-weight: 400\">This argument is used to evaluate the influence values of the observations.\u00a0<\/span><br \/>\n<b><\/b><\/p>\n<p><b>8. m<\/b><\/p>\n<p><span style=\"font-weight: 400\">In this case, a number of predictions are made that need to be replicated at each bootstrap. This is most useful for (generalized) linear models.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>9. weights<\/b><\/p>\n<p><span style=\"font-weight: 400\">This argument is a vector or matrix of importance weights. If it is a vector, then the argument should have as many elements as there are observations in data. This parameter is ignored if a sim is not &#8220;ordinary&#8221; or &#8220;balanced&#8221;.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>10. ran.gen<\/b><\/p>\n<p><span style=\"font-weight: 400\">This function is used only when a sim is &#8220;parametric&#8221;. It is a function of two arguments.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>11. mle<\/b><\/p>\n<p><span style=\"font-weight: 400\">The second argument to be passed to ran.gen.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>12. \u2026<\/b><\/p>\n<p><span style=\"font-weight: 400\">It is an argument for a statistic that needs to be passed unchanged each time it is being called.<\/span><\/p>\n<h3>Types of Bootstrap CIs<\/h3>\n<p>The bootstrap CI function \u201cboot.ci\u201d returns five different types of confidence intervals:<\/p>\n<ul>\n<li>Norm (Normal Representation)<\/li>\n<li>Basic<\/li>\n<li>Stud (studentized)<\/li>\n<li>Perc (percentile)<\/li>\n<li>Bca (bias-corrected, accelerated)<\/li>\n<\/ul>\n<p>In order to understand the various types of CIs in bootstrapping, let us go through some important notations:<\/p>\n<ul>\n<li>The mean of bootstrap realizations is represented by t\u22c6 which is our bootstrap estimate.<\/li>\n<li>The value of statistics in our dataset is t0.<\/li>\n<li>Standard Error in our bootstrap estimate is denoted by se\u22c6.<\/li>\n<li>Bootstrap estimate b\u2004=\u2004t\u22c6\u2005\u2212\u2005t0 where b is our bias.<\/li>\n<li>The confidence level is denoted by \u03b1.<\/li>\n<li>The 1\u2212\u03b12 quantile of the standard normal distribution is z\u03b1.<\/li>\n<li>The \u03b1-percentile of distribution of bootstrap realizations is represented by \u03b8\u03b1.<\/li>\n<\/ul>\n<p>Now, we will take a look at the various bootstrapping CIs.<\/p>\n<h4>1. Percentile CI<\/h4>\n<p>A Percentile CI takes in relevant percentiles. Using the above notations, the percentile CI is written as:<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Percentile-CI.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-63817\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Percentile-CI.jpg\" alt=\"Percentile CI Equation\" width=\"205\" height=\"55\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Percentile-CI.jpg 205w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Percentile-CI-150x40.jpg 150w\" sizes=\"auto, (max-width: 205px) 100vw, 205px\" \/><\/a><\/p>\n<h4>2. Normal CI<\/h4>\n<p>In the case of bootstrap, we modify the Wald CI to correct it for bias. In that case, the Normal CI becomes:<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Normal-CI.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-63818\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Normal-CI.jpg\" alt=\"Normal CI Equation - Bootstrapping in R\" width=\"186\" height=\"69\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Normal-CI.jpg 186w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Normal-CI-150x56.jpg 150w\" sizes=\"auto, (max-width: 186px) 100vw, 186px\" \/><\/a><\/p>\n<h4>3. Basic CI<\/h4>\n<p>The Basic CI is an improvement over the Percentile CI. The Percentile CI does not perform well in cases of weird-tailed distributions, but the Basic CI provides much more robust performance. The methodology through which Basic CI computes differences between the bootstrap replication and t0 is by using the percentiles for distribution.<\/p>\n<p>Basic CI is represented by the formula:<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Basic-CI.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-63820\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Basic-CI.jpg\" alt=\"Basic CI Equation - Bootstrapping in R\" width=\"301\" height=\"57\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Basic-CI.jpg 301w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Basic-CI-150x28.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Basic-CI-300x57.jpg 300w\" sizes=\"auto, (max-width: 301px) 100vw, 301px\" \/><\/a><\/p>\n<h4>4. BC<sub>\u03b1<\/sub>CI<\/h4>\n<p>BC\u03b1CI stands for bias-corrected, accelerated. The specific percentiles of bootstrap realizations are required by Acceleration that is mentioned in the method\u2019s name. Sometimes, these percentiles can be outliers and therefore, is extreme in nature. In these scenarios, BC\u03b1 can be quite unstable.<\/p>\n<p><em><strong>Don&#8217;t forget to check the <a href=\"https:\/\/data-flair.training\/blogs\/graphical-data-analysis-with-r\/\">Graphical Data Analysis with R<\/a><\/strong><\/em><\/p>\n<h4>R Bootstrap Methods<\/h4>\n<p>There are two methods of bootstrapping in R:<br \/>\n<b><\/b><\/p>\n<h5>1. Residuals<\/h5>\n<p><span style=\"font-weight: 400\">First, we bootstrap the residuals. Then, create a set of new dependent variables. After that, we use these dependent variables to form a bootstrapped sample.<\/span><br \/>\n<b><\/b><\/p>\n<h5>2. Bootstrapping Pairs<\/h5>\n<p><span style=\"font-weight: 400\">It involves sampling pairs of the dependent and independent variable. Between these two methods, the second method is found to be more robust.<\/span><\/p>\n<h4>When to use Bootstrap in R?<\/h4>\n<p><span style=\"font-weight: 400\">It is used to enable inference on the statistic of interest. It&#8217;s important when the true distribution of this statistic is unknown.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>For example:<\/b><\/p>\n<p><span style=\"font-weight: 400\">In the case of a linear model, if an analyst does not want to spend time while writing down the equations, then bootstrapping in R is a great approach for him. It helps to get standard errors and confidence intervals from the bootstrapped distribution.<\/span><\/p>\n<h4>When the bootstrap is inconsistent?<\/h4>\n<p><span style=\"font-weight: 400\">This gives a set of scenarios when the bootstrap procedure can fail:<\/span><br \/>\n<b><\/b><\/p>\n<p><b>1<\/b><span style=\"font-weight: 400\">. Generally, it is observed that for small sample sizes less than 10, a bootstrapped sample is not reliable.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>2<\/b><span style=\"font-weight: 400\">. The distributions that have infinite second moments.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>3<\/b><span style=\"font-weight: 400\">. When estimating extreme values.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>4<\/b><span style=\"font-weight: 400\">. At the time of unstable AR processes.<\/span><\/p>\n<h3>R Bootstrap Development &#8211; Pros and Cons<\/h3>\n<p><span style=\"font-weight: 400\">According to Twitter, Bootstrap is the best existing framework. We use bootstrap for developing responsive and mobile-first projects on the web, which are an HTML, CSS and JS framework<\/span><\/p>\n<p><span style=\"font-weight: 400\">Now, we will tell you the most important thing. The frameworks may save you a bunch load of time that you would usually spend in coding, but it restricts your creativity. So, it\u2019s better for you to come up with design ideas that fit their requirements.<\/span><\/p>\n<h4>Advantages of R Bootstrap Development<\/h4>\n<ul>\n<li><span style=\"font-weight: 400\">It has fewer cross-browser bugs.<\/span><br \/>\n<b><\/b><\/li>\n<li><span style=\"font-weight: 400\">It is having responsive structures and styles.<\/span><br \/>\n<b><\/b><\/li>\n<li><span style=\"font-weight: 400\">Bootstrap<\/span><span style=\"font-weight: 400\">\u00a0contains several JavaScript plugins using the jQuery.<\/span><br \/>\n<b><\/b><\/li>\n<li><span style=\"font-weight: 400\">It is having good documentation and community support.<\/span><br \/>\n<b><\/b><\/li>\n<li><span style=\"font-weight: 400\">It has loads of free and professional templates, WordPress themes\u00a0<\/span><span style=\"font-weight: 400\">and plugins.<\/span><br \/>\n<b><\/b><\/li>\n<li><span style=\"font-weight: 400\">Bootstrap\u00a0<\/span><span style=\"font-weight: 400\">has a great grid system.<\/span><\/li>\n<\/ul>\n<h4>Disadvantages of R Bootstrap Development<\/h4>\n<ul>\n<li><span style=\"font-weight: 400\">There will be a need for lots of styles overrides or rewrite files. Thus, it can lead to more time spending on designing and coding the website. Also, the design tends to deviate from the customary design used in bootstrap.<\/span><\/li>\n<li><span style=\"font-weight: 400\">We would have to go the extra mile while creating a design. If we don&#8217;t go with heavy customization, then all the websites will look the same.<\/span><\/li>\n<li><span style=\"font-weight: 400\">The styles present in bootstrap are verbose. Also, it can lead to lots of output in HTML.<\/span><\/li>\n<li><span style=\"font-weight: 400\">A JavaScript is tied to jQuery and it is one of the commonest libraries which thus leaves most of the plugins unused.<\/span><\/li>\n<li><span style=\"font-weight: 400\">It is a non-compliant HTML.<\/span><\/li>\n<\/ul>\n<p><strong><em>Get a deep insight into\u00a0<a href=\"https:\/\/data-flair.training\/blogs\/data-manipulation-in-r\/\">Data Manipulation in R<\/a><\/em><\/strong><\/p>\n<h3>Pros and Cons of R Bootstrapping<\/h3>\n<h4>Pros of R Bootstrapping<\/h4>\n<p><b>1. Don&#8217;t have to spend a lot of time in fundraising <\/b><span style=\"font-weight: 400\">&#8211; Appeal for funding is a long and taxing process for most entrepreneurs. When you&#8217;re a first-time entrepreneur and in the early stages of your company, then being comfortable in bootstrapping, helps you a lot in this process.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>2. Greater control over your company&#8217;s pace<\/b><span style=\"font-weight: 400\"> &#8211; It&#8217;s good if you are raising your money from the profession. The company people are going to pressure you to grow fast or exit big. It&#8217;s the way they gain profit from investing in you.\u00a0As not all businesses are designed for that &#8220;grow big or go home&#8221; pace, the bootstrapping help you decide when and how fast to move.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>3. You can pick your corporate structure<\/b><span style=\"font-weight: 400\"> &#8211; Most investors need you to be a C corp to protect themselves. And, therefore they limit their tax exposure. But, depending on the type of business you&#8217;re in, you might want to be an S-corp or an LLC. Moreover, at the end of the day, it matters a lot\u00a0if you distribute company profits to shareholders. On the other hand, C-corps shareholders are &#8220;double taxed&#8221;. Which will benefit you if you&#8217;re profitable and issuing dividends?<\/span><br \/>\n<b><\/b><\/p>\n<p><b>4. No governance<\/b><span style=\"font-weight: 400\"> &#8211; If you get raised by professional investors, they will ask you to create a board. Hence, this means you have to spend your time in updating and managing the board. You can get a lot of value from a good board but it does take time.<\/span><\/p>\n<p><b>5. A network of supporters <\/b><span style=\"font-weight: 400\">&#8211; Your interests are aligned with those of your investors. So if they want you to succeed then the best ones will go out of their way to help you. So now you have a great team of people to consult for help and advice when you need it. <\/span><span style=\"font-weight: 400\">This\u00a0case is particularly true when you are in need of more money.<\/span><\/p>\n<h4>Cons of R Bootstrapping<\/h4>\n<p><b>1. Speed<\/b><span style=\"font-weight: 400\"> &#8211; By bootstrapping in <a href=\"https:\/\/en.wikipedia.org\/wiki\/R_(programming_language)\">R<\/a>, you are either limiting or redirecting your resources. In some industries like web and software, this can be a major challenge because as we are aware that the markets move so fast, that you might get overtaken by a well-funded competitor while you&#8217;re still bootstrapping.<\/span><br \/>\n<b><\/b><\/p>\n<p><b>2. Personal risk<\/b><span style=\"font-weight: 400\"> &#8211; By bootstrapping, you are retaining more value and taking on more risk. Although, if you are raising money means you share both.<\/span><b><\/b><\/p>\n<h2>Advantages and Disadvantages of Bootstrapped Funding<\/h2>\n<h4>Advantages of Bootstrapping your Business<\/h4>\n<ul>\n<li><span style=\"font-weight: 400\">Instead of wasting your time to hunt down an investment, you can focus more on the business itself.<\/span><\/li>\n<li><span style=\"font-weight: 400\">Without outside investors, you are able to control your company completely without pressure.<\/span><\/li>\n<li>It is guaranteed that your business will become more customer-focused. Since all the money is coming from customers instead of investors.<\/li>\n<li><span style=\"font-weight: 400\">The owner gets to take a bigger piece of the pie in the event of a company exit instead of sharing it with investors.<\/span><\/li>\n<\/ul>\n<h4>Disadvantages of Bootstrapping your Business<\/h4>\n<ul>\n<li>Since bootstrapping contractor uses their own personal assets to get their business going, they are at greater risk of ending up in a lot of debt, if the business fails.<\/li>\n<li><span style=\"font-weight: 400\">It takes a much longer time to grow a company without investment. It means that you will not be earning any money for quite a while.<\/span><\/li>\n<li><span style=\"font-weight: 400\">It&#8217;s not at all possible that you have to bootstrap all business ventures, especially, if the business needs a large amount of capital to get started.<\/span><\/li>\n<li><span style=\"font-weight: 400\">It might be possible that your business fails if product development and marketing becomes inefficient.<\/span><\/li>\n<li><span style=\"font-weight: 400\">Competitors with better financial standing. They have a better chance to push you out of the market before you even get a chance to get your business up and running.<\/span><\/li>\n<\/ul>\n<h2>Summary<\/h2>\n<p>We have studied bootstrapping in R. Along with this, we have learned why and when to use R bootstrapping. After learning all this, we moved to the advantages and disadvantages of bootstrapping in R in different fields which helps in personal growth also.<\/p>\n<p><em><strong>Now, it&#8217;s the time to learn <a href=\"https:\/\/data-flair.training\/blogs\/debugging-in-r-programming\/\">R Debug &#8211; List of important R Debug Functions<\/a><\/strong><\/em><\/p>\n<p>Still, if you have any doubts regarding bootstrapping in R, ask in the comment section.<span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:1467,&quot;href&quot;:&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/R_(programming_language)&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20251001042859\\\/https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/R_(programming_language)&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-09 08:17:04&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-12 12:22:33&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-15 12:29:21&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-18 15:20:53&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-21 18:00:25&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-25 04:08:57&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-28 06:54:42&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-31 09:47:17&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-03 17:14:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-06 19:17:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-09 21:09:32&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-13 04:31:41&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-16 15:06:53&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-19 19:03:58&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-23 05:30:29&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-26 10:18:28&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-29 11:45:43&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-01 12:00:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-04 12:09:55&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-07 15:09:43&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-10 18:01:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-13 23:45:59&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-17 05:29:44&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-20 07:23:59&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-23 10:05:24&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-26 14:54:33&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-01 16:00:29&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-04 19:56:49&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-08 03:19:57&quot;,&quot;http_code&quot;:429},{&quot;date&quot;:&quot;2026-03-11 07:47:37&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-14 13:54:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-17 17:24:09&quot;,&quot;http_code&quot;:429},{&quot;date&quot;:&quot;2026-03-20 23:04:55&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-24 00:07:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-27 00:15:51&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-30 08:20:38&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-03 14:48:26&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-06 19:55:35&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-10 05:52:27&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-13 07:47:26&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-16 08:05:10&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-19 13:04:23&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-22 13:52:44&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-25 13:58:03&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-29 01:16:25&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-02 04:13:02&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-05 06:33:38&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-08 17:48:43&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-12 03:38:06&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-15 04:53:06&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-18 09:15:30&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-21 12:35:48&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-25 03:51:04&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-28 07:13:15&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-01 04:45:49&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-04 06:40:14&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-07 06:45:43&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-10 09:02:48&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-13 16:18:42&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-16 16:46:46&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-19 17:47:20&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-23 10:18:08&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-26 13:31:48&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-06-29 19:56:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-07-03 11:25:24&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-07-03 11:25:24&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, we will learn about working of bootstrapping in R. Along with this, we will cover bootstrap development and the pros and cons of bootstrapping in R in different areas. Also, we&#46;&#46;&#46;<\/p>\n","protected":false},"author":6,"featured_media":59699,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[51],"tags":[20170,2164,20169,2165,20171],"class_list":["post-4917","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-r","tag-bootstrap-cis-types","tag-bootstrap-example","tag-bootstrap-resampling","tag-bootstrapping-in-r","tag-r-bootstrap-methods"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Bootstrapping in R - Single guide for all concepts - DataFlair<\/title>\n<meta name=\"description\" content=\"Learn to implement bootstrapping in R with an example, types of bootstrap CIs, bootstrap resampling, bootstrap methods with pros &amp; cons of bootstrapping, bootstrapped funding and development.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bootstrapping in R - Single guide for all concepts - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Learn to implement bootstrapping in R with an example, types of bootstrap CIs, bootstrap resampling, bootstrap methods with pros &amp; cons of bootstrapping, bootstrapped funding and development.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-01-13T13:06:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-08-25T11:55:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"802\" \/>\n\t<meta property=\"og:image:height\" content=\"420\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bootstrapping in R - Single guide for all concepts - DataFlair","description":"Learn to implement bootstrapping in R with an example, types of bootstrap CIs, bootstrap resampling, bootstrap methods with pros & cons of bootstrapping, bootstrapped funding and development.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/","og_locale":"en_US","og_type":"article","og_title":"Bootstrapping in R - Single guide for all concepts - DataFlair","og_description":"Learn to implement bootstrapping in R with an example, types of bootstrap CIs, bootstrap resampling, bootstrap methods with pros & cons of bootstrapping, bootstrapped funding and development.","og_url":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-01-13T13:06:57+00:00","article_modified_time":"2021-08-25T11:55:44+00:00","og_image":[{"width":802,"height":420,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89"},"headline":"Bootstrapping in R &#8211; Single guide for all concepts","datePublished":"2018-01-13T13:06:57+00:00","dateModified":"2021-08-25T11:55:44+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/"},"wordCount":2084,"commentCount":1,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg","keywords":["Bootstrap CIs Types","Bootstrap Example","Bootstrap Resampling","Bootstrapping in R","R Bootstrap Methods"],"articleSection":["R Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/","url":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/","name":"Bootstrapping in R - Single guide for all concepts - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg","datePublished":"2018-01-13T13:06:57+00:00","dateModified":"2021-08-25T11:55:44+00:00","description":"Learn to implement bootstrapping in R with an example, types of bootstrap CIs, bootstrap resampling, bootstrap methods with pros & cons of bootstrapping, bootstrapped funding and development.","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/01\/Bootstrapping-in-R-01-1.jpg","width":802,"height":420,"caption":"Bootstrapping in R"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/bootstrapping-in-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"R Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/r\/"},{"@type":"ListItem","position":3,"name":"Bootstrapping in R &#8211; Single guide for all concepts"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"The DataFlair Team provides industry-driven content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our expert educators focus on delivering value-packed, easy-to-follow resources for tech enthusiasts and professionals.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam2\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/4917","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=4917"}],"version-history":[{"count":13,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/4917\/revisions"}],"predecessor-version":[{"id":63823,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/4917\/revisions\/63823"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/59699"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=4917"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=4917"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=4917"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}