johntan05
johntan05

Reputation: 105

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

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?

Upvotes: 5

Views: 29326

Answers (2)

Bryant Kou
Bryant Kou

Reputation: 1739

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

Upvotes: 8

Happy001
Happy001

Reputation: 6383

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

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

Upvotes: 1

Related Questions