How do I put a file path variable into pandas.read_csv?

johntan05 picture johntan05 · Feb 17, 2016 · Viewed 20.4k times · Source

I tried to apply it through os.environ like so:

import os
import pandas as pd

os.environ["FILE"] = "File001"

df = pd.read_csv('/path/$FILErawdata.csv/')

But pandas doesn't recognize $FILE and instead gives me $FILErawdata.csv not found

Is there an alternative way to do this?

Answer

Bryant Kou picture Bryant Kou · Feb 17, 2016

New Answer:

If you like string interpolation, python now uses f-strings for string interpolation:

import os
import pandas as pd

filename = "File001"

df = pd.read_csv(f'/path/{filename}rawdata.csv/')

Old Answer:

Python doesn't use variables like shells scripts do. Variables don't get automatically inserted into strings.

To do this, you have to create a string with the variable inside.

Try this:

import os
import pandas as pd

filename = "File001"

df = pd.read_csv('/path/' + filename + 'rawdata.csv/')