如何从Pandas读取的DataFrame中提取目标数值?
提取CSV指定列中的目标数值
嘿,我明白你的需求了——你用pandas读取了CSV的第7列(索引6),但遍历输出时带了多余的索引、列标识和dtype信息,只想拿到那个纯数值140720848950920对吧?
这是因为你遍历得到的row是一个单元素的Series对象,直接打印会显示它的完整元数据。只要提取这个Series里的单个元素就行,给你几种简单的方法:
方法1:遍历过程中直接提取
修改你的遍历代码,从row里取出具体数值:
import pandas as pd data = pd.read_csv("filename", usecols=[6], header=None, delimiter=' ') for index, row in data.iterrows(): # 三种可选的提取方式,任选其一即可 value = row.iloc[0] # 通过位置索引提取 # value = row[6] # 通过列名(这里列名就是索引6)提取 # value = row.values[0] # 转成数组后取第一个元素 print(index, value)
这样输出就会变成:10024 140720848950920,完全符合你的需求。
方法2:直接获取整列的所有数值(无需遍历)
如果你不需要逐行处理,直接把整列转成列表或数组更高效:
# 获取整列的所有数值列表 all_target_values = data[6].tolist() # 取单个数值的话,比如第一个就是 all_target_values[0]
补充说明
你之前的输出里的Name: 10024, dtype: int64是Series对象的默认打印格式,它包含了行索引、列名和数据类型,只要提取其中的元素就能去掉这些冗余信息啦。
内容的提问来源于stack exchange,提问作者Dileesh Dil
相关产品推荐
相关产品推荐

