3

I want to know if there's a way in python for reading multiple CSV file form a folder and assigning to separate data frame by the name of the file. The below code will throw an error but to show the point I pasted it

import glob
for filename in glob.glob('*.csv'):
    index = filename.find(".csv")
    if "test" in filename:
        filename[:index]) = pd.read_csv(filename)
0

1 Answer 1

6

I believe you need create dictionary of DataFrame with keys by filenames:

d = {}
for filename in glob.glob('*.csv'):
    if "test" in filename:
        d[filename[:-4]] = pd.read_csv(filename)

What is same as:

d = {f[:-4]: pd.read_csv(f) for f in glob.glob('*.csv') if "test" in f}

If want only name of file is possible use:

d = {os.path.basename(f).split('.')[0]:pd.read_csv(f) for f in glob.glob('*.csv') if "test" in f}
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.