Python 3.x 在python循环中引用文件名
我有5个数据帧,如下所示。我需要使用for循环打印每个文件的记录数。我怎样才能做到这一点Python 3.x 在python循环中引用文件名,python-3.x,pandas,Python 3.x,Pandas,我有5个数据帧,如下所示。我需要使用for循环打印每个文件的记录数。我怎样才能做到这一点 f1=pd.DataFrame(np.random.random(10)) f2=pd.DataFrame(np.random.random(10)) f3=pd.DataFrame(np.random.random(10)) f4=pd.DataFrame(np.random.random(10)) f5=pd.DataFrame(np.random.random(10)) 我试过下面的代码 for i
f1=pd.DataFrame(np.random.random(10))
f2=pd.DataFrame(np.random.random(10))
f3=pd.DataFrame(np.random.random(10))
f4=pd.DataFrame(np.random.random(10))
f5=pd.DataFrame(np.random.random(10))
我试过下面的代码
for i in range(1,6):
j='f'+str(i)
print(j.shape)
并获得错误AttributeError:“str”对象没有属性“shape”,因为循环创建了字符串f1、f2、f3、f4、f5。是否有其他方法引用文件名并在循环中对其执行操作?还有,这是一个好的做法吗
我想对循环中的所有数据帧执行的其他操作如下,而不仅仅是for循环
df1=f1.loc[(f1.number > 0.5) & (f1.number<1)]
df2=f2.loc[(f2.number > 0.5) & (f2.number<1)]
df1=f1.loc[(f1.number>0.5)&(f1.number 0.5)&(f2.number只需创建一个包含5个元素的列表并循环遍历即可
f = [pd.DataFrame(np.random.random(10)).
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
]
for j in f:
print(j.shape)
只需创建一个包含5个元素的列表,并在其中循环
f = [pd.DataFrame(np.random.random(10)).
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
pd.DataFrame(np.random.random(10)),
]
for j in f:
print(j.shape)
我将使用locals
for i in range(1,6):
j='f'+str(i)
print(locals()[j].shape)
(10, 1)
(10, 1)
(10, 1)
(10, 1)
(10, 1)
我将使用locals
for i in range(1,6):
j='f'+str(i)
print(locals()[j].shape)
(10, 1)
(10, 1)
(10, 1)
(10, 1)
(10, 1)