【问题标题】:Passing multiple arguments while reading a CSV file in Python在 Python 中读取 CSV 文件时传递多个参数
【发布时间】:2020-06-16 04:10:57
【问题描述】:

我正在尝试使用 pandas 读取 csv 文件,在读取时我只想读取几行和几列,因为我可以在 pd.read_csv 中传递所有参数,如 skiprows、nrows。但我不想这样做,我想创建一个单独的函数并将这个函数传递给 pd.read_csv ,如下所示。谁能告诉我如何实现这一目标。

import pandas as pd
file = r'C:\Users\Desktop\raw_data\Parameters.csv'

def readheader():
parse_config
{
    'nrows': 200,
    'header': [1,4],
    'skip_blank_lines': True
}
df = pd.read_csv(file, **parse_config)
print(df)
df.head()

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    你可以这样做:

    def someFunction(filepath_or_buffer, skip_blank_lines):
      parse_config = {
          'filepath_or_buffer': filepath_or_buffer,
          'skip_blank_lines': skip_blank_lines
      }
      df = pd.read_csv(**parse_config)
    
    someFunction(filepath_or_buffer='/some_path', skip_blank_lines=False)
    

    您的 parse_config 对象中的键必须是有效的 parameters

    如果不修改 pandas 源代码,您无法更改能够传递给 read_csv 方法的参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-03
      • 2012-01-04
      • 1970-01-01
      • 2017-11-02
      • 1970-01-01
      • 2014-02-14
      • 2020-05-09
      • 2017-05-17
      相关资源
      最近更新 更多