如何从CSV读取的DataFrame提取非Series类型行值存入变量供后续操作
操作方法
前提:你已经完成CSV读取,得到DataFrame对象df,示例代码如下:
import pandas as pd df = pd.read_csv("你的csv文件路径.csv")
1. 整列数值存入变量(实现x=1,3,4效果)
调用tolist()方法可直接将列转为普通Python列表,不会返回Series类型:
# 存储X列所有值到x变量 x = df['X'].tolist() # 存储Y列所有值到y变量 y = df['Y'].tolist() # 存储Z列所有值到z变量 z = df['Z'].tolist()
执行后x的值为[1, 3, 4],列表内元素均为整数类型,可直接用于后续逻辑。
2. 单个单元格数值提取(非Series类型)
如果需要提取某一行某一列的单个具体数值,可使用以下两种方法,返回结果直接为整数/字符串等对应类型:
- 按位置索引提取用
iat:行号、列号从0开始计数,比如提取第0行(第一行)X列(第0列)的数值:single_val = df.iat[0, 0] # 返回结果为整数1 - 按行索引+列名提取用
at:默认行索引为0、1、2时,提取第1行(第二行)Y列的数值:single_val = df.at[1, 'Y'] # 返回结果为整数2
你可以通过type()函数验证返回类型,比如print(type(single_val))会返回<class 'int'>,确认不是Series类型。
内容的提问来源于stack exchange,提问作者JustWantToLearn
相关产品推荐
相关产品推荐

