获取数据帧的行(不包括标题)

2024-04-18 04:49:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个CSV文件,截图如下: enter image description here我的目标是获取数据帧的行,不包括标题部分。

我的目的是:使用函数astype()将行中的数据转换为float64,然后使用函数round()将数据四舍五入到小数点后两位。其代码如下所示:

df = pd.read_csv('C:/Users/viral/PycharmProjects/Samples/036_20191009T132130.CSV',skiprows = 1)
df = df.astype('float64', errors="ignore")
df = df.round(decimals=2)

在这里您可以看到,我跳过第一行是为了排除标题部分。你知道吗

但不幸的是,数据并没有四舍五入到2位小数。结果如下: enter image description here

我不确定,但我猜行空数据框在取整数据时产生了问题。你知道吗

带标题=无enter image description here

即使header=1也会以skiprow=1的方式操作。你知道吗

欢迎提出任何建议。。。你知道吗

谢谢


Tags: 文件csv数据函数代码目的标题目标
2条回答

我相信你需要:

file = 'C:/Users/viral/PycharmProjects/Samples/036_20191009T132130.CSV'

#for default columns 0,1,2, N with omit first row in original data
df = pd.read_csv(file,skiprows = 1, header=None)
#for columns names by first row in file omit skiprows and header parameters
#df = pd.read_csv(file)
#if necessary, convert to floats
df = df.astype('float64', errors="ignore")
#select only numeric columns
cols = df.select_dtypes(np.number).columns
#round only numeric cols
df[cols] = df[cols].round(decimals=2)

请尝试以下操作:

df = pd.read_csv('C:/Users/viral/PycharmProjects/Samples/036_20191009T132130.CSV',skiprows = 1)
df = df.astype('float64', errors="ignore")
df = df.round(decimals=2)

相关问题 更多 >