在 Python 中使用命令行加载数据集

Loading dataset using command line in Python

我知道我可以使用 pandas 的 read_csv 函数加载 pandas 中的数据集,如下所示

import pandas as pd

df = read_csv('/home/user/iris_dataset.csv', header=0)
df.head()

如何在执行代码时使用命令行参数加载相同的数据集?我想在执行代码时将数据集加载到像 python3 example.py -D 'iris_dataset.csv' 这样的数据框

使用sys.argv

我们可以这样使用 sys.argv :

import pandas as pd
import sys

  
df = pd.read_csv(f'/home/user/{sys.argv[1]}', header=0)
print(df.head())

我们可以这样调用它:

python example.py iris_dataset.csv

使用argparse

或者我们可以使用 argparse :

import argparse
import pandas as pd

my_parser = argparse.ArgumentParser()
my_parser.add_argument('-D', action='store', type=str, required=True)
args = my_parser.parse_args()

df = pd.read_csv(f'/home/user/{args.D}', header=0)
print(df.head())

它可以正常使用:

python example.py -D "iris_dataset.csv"