如何创建根据文件名标记非结构化数据集的csv文件

时间:2019-03-31 22:32:49

标签: python csv dataset label

我有一个由音频文件组成的非结构化数据集。如何遍历给定目录中的所有文件(包括子文件夹中的所有文件)并根据文件名标记它们,然后将此信息存储在CSV文件中?

我希望CSV文件看起来像这样 CSV File

enter image description here

1 个答案:

答案 0 :(得分:1)

  

目的是我想得到   文件名并以我想要的方式(对于我的所有文件)创建标签,并   然后将此信息保存到一个csv文件中

您可以使用globpandas to_csv()来完成此任务,即:

b

示例arr[i]

index = arr.index(min(arr[i:]))
a[i], a[index] = a[index], a[i]

注意:

  1. Pandas允许several export formats,包括上面示例中使用的to_json()to_pickle()from os import path from glob import glob import pandas as pd f_filter = ["mp3", "ogg"] # a list containing the desired file extensions to be matched m = [] # final match list for f_path in glob('D:/museu_do_fado/mp3/**', recursive=True): # loop directory recursively f_name = path.basename(f_path) # get the filename f_ext = f_name.split(".")[-1].lower() # get the file extension and lower it for comparison. if f_ext in f_filter: # filter files by f_filter label = "Your choice" #label = f_name[0] + f_ext[-1] # as per your example, first char of file_name and last of file_ext m.append([f_path, f_name, f_ext, label]) # append to match list #print(f_path, f_name, f_name, label) df = pd.DataFrame(m, columns=['f_path', 'f_name', 'f_ext', 'label']) # create a dataframe from match list df.to_csv("my_library.csv", index=False) # create csv from df ,它是创建多种类型的{{ 3}}。如果可以的话,我会建议您学习熊猫。
  2. 此答案应为您提供一个起点,请确保data analysis/visualization(如果有问题)GL。