我试图将if条件的输出存储到Dataframe。下面是我正在尝试的:
import os
filename = "Desktop/sales/10-05-2018"
#check file exists
if(os.path.exists(filename)):
print("Files received")
else:
print("No files received")
我不想打印输出,而是将输出存储到一个Dataframe中。任何人都可以对此提出建议。谢谢。
这是将此类映射存储在数据框中的一种方法。
import os, pandas as pd
df = pd.DataFrame(columns=['filename', 'exists'])
df['file'] = ['file1.csv', 'file2.csv', 'file3.csv']
df['exists'] = df['file'].map(os.path.exists)
这将在一个列中创建一个文件名数据框,在另一列中创建一个布尔数列,以指示文件是否存在。
如果文件名是从迭代器中检索的,则在构造数据框之前,应先将其汇总到列表列表中。在这种情况下,连续追加到现有数据框的效率很低。
lst = ( ... some iterable ... )
lst_of_lst = [[f, os.path.exists(f)] for f in lst]
df = pd.DataFrame(lst_of_lst, columns=['filename', 'exists'])
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句