Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从csv打开时按顺序动态命名dataframe-Python/Pandas_Python_Pandas_Dataframe_Dynamic_Naming - Fatal编程技术网

从csv打开时按顺序动态命名dataframe-Python/Pandas

从csv打开时按顺序动态命名dataframe-Python/Pandas,python,pandas,dataframe,dynamic,naming,Python,Pandas,Dataframe,Dynamic,Naming,我有一个.csv的列表-他们以一种非常统一的方式命名,比如说,宝马年,即宝马60,宝马61。。。宝马70。。。宝马00。。等等我想把它们拉到一个pandas数据框中——我可以使用pd.read\u csv(..)函数来实现 但是有很多.csv,我希望在这方面做得更多- for i in range(70, 80): BMW_{i} = pd.read_csv(BMW_{i}.csv) 其中,{i}将类似于在循环迭代期间对i的值的引用。有什么办法可以做到这一点吗 另外,我看到了很多关于

我有一个.csv的列表-他们以一种非常统一的方式命名,比如说,宝马年,即宝马60,宝马61。。。宝马70。。。宝马00。。等等我想把它们拉到一个pandas数据框中——我可以使用pd.read\u csv(..)函数来实现

但是有很多.csv,我希望在这方面做得更多-

for i in range(70, 80):
     BMW_{i} = pd.read_csv(BMW_{i}.csv)
其中,
{i}
将类似于在循环迭代期间对i的值的引用。有什么办法可以做到这一点吗


另外,我看到了很多关于动态命名和人们说的问题-使用列表或词典,但我不认为这是我在这个问题上的要求。

还没有测试过,但我会尝试类似的方法

for i in range(70, 80):
    fpath = 'BMW_%d.csv' %i
    vname = 'BMW_%d' %i
    exec("%s = pd.read_csv(%s)" % (vname, fpath))

看这里:@Ank-因为那些问题不是这样的。这些都是简单的用户输入,而不是在变量名的“后缀”发生变化时处于循环状态。我的数据框也需要更改为面板数据集,字典和列表非常复杂。此外,我没有看到任何人更改附加的“数字”来循环变量,这是我需要的,特别是因为这将扩展up@magraf-这也是我访问的第一个链接。但这并不包括如何以“串联”方式使用迭代器来命名variablesCheck post。我也有同样的问题。@ank-我不想要数据帧列表的一个主要原因是,我需要“面板化”它们,单独使用它们,合并它们,然后进行其他操作。以这种方式跟踪索引-特别是当我需要使用不同的csv集运行多个循环时,这将是非常困难的。否:(我得到一个错误
无法分配给运算符
,那么您可能有一些奇怪的文件名。您可以使用“”。Als将整数直接插入
exec(“BMW\u%d=pd.read\u csv”)来保护它们('BMW_u%d.csv')“%(i,i))
这里的附加信息是,您可以构建一个字符串并将其作为代码执行。因此,如果不起作用,您的字符串就不是有效的代码。还要注意,某些IDE可能会禁止使用变量,因为您只在运行时定义名称。它起作用了:)谢谢。我真的希望其他想要类似解决方案的人来这里为您解答我的文件夹名很奇怪-使用os.chdir(..)来纠正它。