这个问题可以通过在循环中使用不同的变量名来解决。但是,我需要检查是否可以找到可以存储数据帧的 List 元素的长度。
我编写了代码来读取文件夹中存储的所有 .csv 文件。我已经创建了包含字符的列表。现在,我正在从文件夹中一一读取 csv 文件,并将其作为数据框存储在列表元素中。因此,列表的所有元素都包含通过读取 csv 文件获得的数据框。即,列表元素 0 -“a”包含一个数据帧,列表元素 1 -“b”包含其他数据帧,依此类推。我需要找到列表元素包含的数据帧的长度。我正在使用 len(),但这反射(reflect)了列表的唯一长度。请建议我一些解决方案。
下面提到的是代码。
url = "C:/Users/SONY/Desktop/SEdge/Proec/Day/Master Files/20-12-2017/"
count = 0;
lst = ["a", "b", "c", "d"]
os.chdir(url)
for file in glob.glob("*.csv"):
join = url + file;
lst[count] = pd.read_csv(join)
count +=1;
打印(len(lst[1]))
最佳答案
您不能将数据存储在字符串中。您必须将它们存储在变量中。由于您正在循环一堆 csv 文件,因此 opt 数据结构是字典。即
改进您自己的代码:
lst = ['a','b','c','d']
di = {}
for count, file in enumerate(glob.glob("*.csv")):
join = url + file;
di[lst[count]] = pd.read_csv(join)
di['a']
存储第一个 csv 文件。类似地,di['b]
第二个,依此类推。
现在,如果您执行len(di[lst[1]])
,这将为您提供 csv 文件 1 的长度。
有关数据结构的更多详细信息,我建议您浏览the documentation
关于python - 需要获取存储在 python pandas 列表元素中的数据帧的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47936741/