For the castaway_details DataFrame, there is a full_name column and a short_name column. It would be helpful for future analysis to have the contestants first and last name split into separate columns. First copy the castaway_details DataFrame to a new DataFrame called Q13 so that we do not change the original DataFrame.

Create two new columns and add the contestant's first name to a new column called first_name and their last name to a new column called last_name. Add these columns to the Q13 DataFrame. Put the first_name and last_name columns between the full_name and short_name columns.

Note: Be careful as some players have last names with multiple spaces. For example, Lex van den Berghe. You should code Lex as his first name and van den Berghe as his last name.

To split the full_name column into separate first name and last name columns in the Q13 DataFrame, you can use the str.split() method along with the str.strip() method to remove any leading or trailing whitespaces. Afterward, you can insert the first_name and last_name columns in the desired position using the DataFrame.insert() method.

Here is the code to achieve this:

Q13 = castaway_details.copy() # Copying the original DataFrame to Q13

# Splitting the full_name column into first_name and last_name columns
Q13[['first_name', 'last_name']] = Q13['full_name'].str.split(' ', 1, expand=True)
Q13['first_name'] = Q13['first_name'].str.strip()
Q13['last_name'] = Q13['last_name'].str.strip()

# Inserting the first_name and last_name columns between full_name and short_name
Q13.insert(2, 'first_name', Q13.pop('first_name'))
Q13.insert(3, 'last_name', Q13.pop('last_name'))

After executing this code, you will have a new DataFrame Q13 with the first_name and last_name columns added between the full_name and short_name columns, and the names split correctly even for contestants with last names containing multiple spaces.

To split the contestants' first and last names into separate columns in a new DataFrame called Q13, follow these steps:

Step 1: Copy the castaway_details DataFrame to a new DataFrame named Q13.
```python
Q13 = castaway_details.copy()
```

Step 2: Extract the contestant's first name by splitting the full_name column on the first space. Store this in a new column named first_name.
```python
Q13['first_name'] = Q13['full_name'].str.split(' ', n=1).str[0]
```

Step 3: Extract the contestant's last name by splitting the full_name column on the first space and getting the second part. Store this in a new column named last_name.
```python
Q13['last_name'] = Q13['full_name'].str.split(' ', n=1).str[1]
```

Step 4: Rearrange the order of columns in the Q13 DataFrame. Place the first_name and last_name columns between the full_name and short_name columns.
```python
Q13 = Q13[['full_name', 'first_name', 'last_name', 'short_name']]
```