当我尝试使用 pandas 时,我注意到 pandas.read_csv 的一些奇怪行为,并想知道是否有更多经验的人可以解释可能导致它的原因。
首先,这是我从 .csv 文件创建新的 pandas.dataframe 的基本类定义:
import pandas as pd
class dataMatrix:
def __init__(self, filepath):
self.path = filepath # File path to the target .csv file.
self.csvfile = open(filepath) # Open file.
self.csvdataframe = pd.read_csv(self.csvfile)
Run Code Online (Sandbox Code Playgroud)
现在,这很有效,并且在我的 __ main __.py 中调用该类成功创建了一个 Pandas 数据框:
From dataMatrix.py import dataMatrix
testObject = dataMatrix('/path/to/csv/file')
Run Code Online (Sandbox Code Playgroud)
但我注意到这个过程会自动将 .csv 的第一行设置为 pandas.dataframe.columns 索引。相反,我决定对列进行编号。由于我不想假设我事先知道列数,因此我采用了打开文件,将其加载到数据帧中,计算列数,然后使用范围(使用适当的列数重新加载数据帧)的方法( )。
import pandas as pd
class dataMatrix:
def __init__(self, filepath):
self.path = filepath
self.csvfile = open(filepath)
# Load the .csv file to …Run Code Online (Sandbox Code Playgroud)