I have this `pandas` dataframe:

```
df = pd.DataFrame(["LONG AAPL 2X CBZ","SHORT GOOG 10X VON"], columns=["Name"])

```

I would like to identify `"AAPL"` in column `Name`, pass that through a dictionary `"AAPL":"Apple"` and then insert that into a string in new column `Description`.

Desired output:

```
Name                   Description
"LONG AAPL 2X CBZ"     "Tracks Apple with 2X leverage."
"SHORT GOOG 10X VON"   "Tracks Google with -10X leverage."

```

The part where I'm having the problem is entering a variable substring into another string as `"Tracks X with Y leverage."`

If I didn't have to do that, just extracting from `name` to `description` is possible:

```
df["Description"] = df["Name"].str.extract(r"\s(\S+)\s").map({"AAPL":"Apple", "GOOG":"Google"})

```

or extracting the leverage:

```
df["Description"] = df["Name"].str.extract(r"(\d+X)")

```

If possible, I would like to use `regex` to extract the variables, as in reality I will be doing some more detailed regex e.g. for retrieving different formats of multipliers, e.g. `X2`, `2x` and so forth.

**Note**: I perhaps need to set up another column to inform whether the leverage is positive or negative and use that to decide whether to append `"-"` in front of the multiplier as `-10X leverage.`

```
df["direction"] = df["name"].map(lambda x: "Long" if "LONG" in x else "Short" if "SHORT " in x else "Long")

Name                   Direction      Description
"LONG AAPL 2X CBZ"     "Long"         "Tracks Apple with 2X leverage."
"SHORT GOOG 10X VON"   "Short"        "Tracks Google with -10X leverage."

```