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

28.2k views Asked by At

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?

2

There are 2 answers

0
Happy001 On
df = pd.read_csv('/path/%(FILE)srawdata.csv' % os.environ)

I suspect you need to remove the trailing '/'.

0
Bryant Kou On

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/')