4. Data Import and Export

## 4.1 Exporting Data to Delimited Files

1. If we have a data frame named `my_data` in R, write R code to write the data frame into a .csv file named “my_data_no_name.csv” without column names.

2. If we have a data frame named `my_data` in R which contains `NA` values, write R code to write the data frame into a delimited file called “my_data_na.csv” with `#` as the delimiter and use `999` as the indicator for missing values.

## 4.2 Importing Data from Delimited Files

1. If we have a delimited file named “my_data.txt” with `*` as the delimiter and the file is located in the current working directory. Write R code to read the file into an object with name `my_data`.

2. First, run the code below.

    ## Rows: 3 Columns: 3
    ## ── Column specification ────────────────────────────────────────────────────────
    ## Delimiter: ","
    ## chr (3): X1, X2, X3
    ##
    ## ℹ Use `spec()` to retrieve the full column specification for this data.
    ## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.

Which of the following are the column names of the `d1`?

- `X1`, `X2`, and `X3`
- `x`, `y`, and `z`

3. First, run the code below.

    ## Warning: One or more parsing issues, see `problems()` for details

    ## Rows: 4 Columns: 1
    ## ── Column specification ────────────────────────────────────────────────────────
    ## Delimiter: ","
    ## chr (1): The first line
    ##
    ## ℹ Use `spec()` to retrieve the full column specification for this data.
    ## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.

Which of the following are the column names of the `d1`?

2. Which of the following is a valid object name in R?

- `2.True`
- `else`
- `I_am_not_a_valid_name`
- `I_am_a_Pretty#_name`

3. Write R code to get the list of all objects in the environment.

## 2.2 Numeric Vector, Character Vector, & Logical Vector

1. Write R code to create a numeric vector named `vec_1` with values (7, 24, 8, 26), get its length, and find out its type.

2. Write R code to create a character vector named `char_1` with values (“I”, “am”, “learning”, “R!”), get its length, find out its type, and concatenate the vector into a single string with space as the separator.

3. For the `char_1` defined in Q2, find the number of characters in each string, and convert each string to upper case.

4. Create a length-2 logical vector representing whether `vec_1` and `char_1` are of character type.

5. Let `class1 <- c(7, TRUE)`. Which of the following is the class of `class1`?

- numeric
- logical
- character

6. Let `class2 <- c(7, TRUE, "char")`. Which of the following is the class of `class2`?

- numeric
- logical
- character

## 2.3 Create Vectors with Patterns

1. Write R code to create consecutive integers from -10 to 10.

2. Write R code to create a decreasing sequence from 5 to 1 with increment -0.5.

3. Write R code to create an equally-spaced sequence from 2 to 6 with length 10.

4. Write R code using `rep()` function to create the string

`c("sheep","pig", "cat","sheep","pig", "cat","sheep","pig", "cat")`

5. Write R code using `rep()` function to create the string

`c("sheep","sheep","pig","pig","pig","pig","cat","cat","cat")`

## 4. Data Import and Export