我最近发表了一篇关于如何从CSV文件创建多个变量的文章。代码的工作原理是我创建了变量。但是,代码正在创建一组变量,所有变量都等于第一行。我需要代码为数据帧中的每一行生成一个变量
我需要208000个变量,标记为A1:A20800
我目前拥有的代码:
df = pandas.read_csv(file_name)
for i in range(1,207999):
for c in df:
exec("%s = %s" % ('A' + str(i), c))
i += 1
我尝试在第二个%s周围添加额外的引号(出现语法错误)。我试过选择df的所有行并使用它。不知道为什么不行!每次我打印一个变量来测试它是否工作时,它都在打印相同的值,(即A1=A2=A3…=A207999)我真正想要的是:
A1=第1行 A2=第2行 . . .
提前感谢您的帮助
我不知道熊猫是如何读取文件的,但我猜它会返回一个iterable。在这种情况下,使用
islice
应该只允许读取20800行:所有变量的值都相同,因为在内部
for
循环中递增i,所以所有Annnn
变量可能都设置为最后一个值所以你想要更像:
如果要创建包含数据帧中每行的值的列表,可以使用方法^{} :
如果仍要创建大量变量,可以在循环中这样做:
相关问题 更多 >
编程相关推荐