Copy Data Frame to Clipboard in R (Example)


On this page, I’ll demonstrate how to copy a data frame to the clipboard in the R programming language.

The post contains these content blocks:

So now the part you have been waiting for – the example:


Creation of Example Data

To begin with, we’ll need to construct some data that we can use in the following example syntax.

data <- data.frame(x1 = 16:11,    # Create example data
                   x2 = "yyy",
                   x3 = LETTERS[10:15])
data                              # Print example data


table 1 data frame copy data frame clipboard


Table 1 shows that our example data contains six data points and three variables. The variable x1 is an integer and the variables x2 and x3 are characters.


Example: Copy Data Frame to Clipboard Using write_clip() Function

This example illustrates how to copy a data frame to the clipboard in the R programming language.

For this task, we can apply the write_clip function as shown below:

clipr::write_clip(data)           # Apply write_clip

After executing the previous R code, our data set is saved in the clipboard.

If we now press Ctrl + v, the following output is returned:

# x1	x2	x3
# 16	yyy	J
# 15	yyy	K
# 14	yyy	L
# 13	yyy	M
# 12	yyy	N
# 11	yyy	O

Looks good!

We may use this code to copy and paste our data to external files such as TXT, Excel, and CSV files.


Video & Further Resources

I have recently published a video on my YouTube channel, which shows the R programming codes of this article. You can find the video instruction below.



In addition, you might read some other R tutorials on this website:


At this point you should know how to copy a data set to the clipboard to write it to an external file in R programming. If you have additional questions and/or comments, please let me know in the comments section below. Furthermore, please subscribe to my email newsletter for updates on new articles.


Subscribe to the Statistics Globe Newsletter

Get regular updates on the latest tutorials, offers & news at Statistics Globe.
I hate spam & you may opt out anytime: Privacy Policy.

4 Comments. Leave new

  • Is there any sentence to copy an output of a model? It will be very useful to get all the parameters by an export file.

    • Hello Diego,

      After accessing the output components of the model, you can export them to an xlsx or csv file. Here is an example of exporting the linear regression coefficients to a csv file.

      # Assuming we have a data frame called 'df' with two columns 'x' and 'y'
      df <- data.frame(x = rnorm(100), y = rnorm(100))
      # Fit a linear model
      model <- lm(y ~ x, data = df)
      # Get the coefficients
      coefficients <- coef(model)
      # Coefficients are a named numeric vector, which we need to transform to a dataframe to export
      coefficients_df <- data.frame('names' = names(coefficients), 'values' = coefficients, row.names = NULL)
      # Write the coefficients to a CSV file
      write.csv(coefficients_df, file = "coefficients.csv")


  • Diego de Felipe
    June 22, 2023 1:04 am

    Hi Cansu,
    Maybe that came out wrong. For example, I would like to export an entire table of ANOVA avoid copy and paste from the console to and txt file or another extension file. I said ANOVA as an example, but maybe could be any output from a mixed model.

    • Hello Diego,

      For Anova, it is slightly different. It is important to figure out the output object’s class; accordingly, you can convert it to a data frame and then use the exporting function of choice. See the following code for exporting Anova output.

      # Assuming we have a data frame called 'df' with two columns 'group' and 'score'
      df <- data.frame(group = rep(c("A", "B", "C"), each = 20), score = rnorm(60))
      # Fit a model. Note that group is a factor here
      model <- aov(score ~ group, data = df)
      # Get the summary
      summary_results <- summary(model)
      #             Df Sum Sq Mean Sq F value Pr(>F)
      # group        2   0.42  0.2111   0.248  0.781
      # Residuals   57  48.48  0.8505 
      # The summary is a list with one element per stratum (usually just one for simple ANOVAs)
      # Each element is a matrix, but we can convert it to a data frame
      summary_df <- data.frame(summary_results[[1]])
      #             Df     Sum.Sq   Mean.Sq   F.value   Pr..F.
      # group        2  0.4221363 0.2110682 0.2481815 0.781057
      # Residuals   57 48.4761621 0.8504590        NA       NA
      # Now we can save it as before
      write.csv(summary_df, file = "anova_summary_results.csv")



Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.