我得到“Pandas ValueError数组的长度必须相同” 在开始之前,我检查了类似问题的答案,人们建议使用类似的方法:
DataFrame(dict([ (k,Series(v)) for k,v in d.iteritems() ]))
如果字典或中只有两个值
^{pr2}$但他们都不为我工作。我的代码所做的是,转到目录中的文件,获取名称和上次修改时间,打开文件并在名为phash的函数中使用它并返回一个值。我想phash函数可能有问题,也许有时候它会返回一个空值。在
在我的案例中,数据是这样的:
raw_data = {}
hash_11 = []
time_1 = []
file_name_1 = []
for file in date_file_list:
try:
#print(file[1])
y = file[1]
file_name = os.path.basename(y) # extract just the filename or #file_name = os.path.split(file[1])
file_name = file_name.split('_-_')[0]
file_name_1.append(file_name)
#print(file_name)
# convert date tuple to MM/DD/YYYY HH:MM:SS format
#file_date = time.strftime("%m/%d/%y %H:%M:%S", file[0])
time = file[0]
time_1.append(time)
img = Image.open(str(file[1]))
hash_1 = imagehash.dhash(img)
hash_11.append(hash_1)
#hash_1 = str(hash_1)
#data = [hash_1, time, file_name]
#hamming_list.append(data)
#print(file_name, hash_1, file_date)
data ={'hash_1': hash_11,'time': time_1, 'file_name': file_name_1}
raw_data.update(data)
except:
pass
df = pd.DataFrame(raw_data, columns = ['hash_1', 'time','file_name'])
目前没有回答
相关问题 更多 >
编程相关推荐