Шаги, которые работали на меня: 1. Отсоедините телефон от USB-кабеля 2. Отмените USB-отладку на телефоне 3. Перезагрузите устройство. 4. Подключите устройство. Наиболее важной частью была перезагрузка устройства. Не работал без него.
Вы можете использовать библиотеку pandas
для этого:
1.) Считайте свой CSV в кадр данных pandas:
import pandas as pd
df = pd.read_csv('hallpass_raw.csv', sep=',')
Пример: Допустим, так выглядит ваш кадр данных .
In [365]: df
Out[365]:
fname age salary
0 a 5.0 1.5
1 a 5.0 1.5
2 b 1.0
3 b 15.0
4 c 20.0 1.0
2.) Удалить строки с определенным столбцом как NULL
:
Вы хотите удалить строки, имеющие значение NULL
в столбце age
:
In [364]: df = df[df.age <> '']
Out[364]:
fname age salary
0 a 5.0 1.5
1 a 5.0 1.5
3 b 15.0
4 c 20.0 1.0
[1113 ] Вы можете видеть, что второй ряд отброшен.
3.) Запишите обработанный фрейм данных обратно в csv:
df.to_csv('new.csv', index=False)
При этом вам не нужно беспокоиться о сложных циклах для обработки вашего csv.
Используйте оператор if
def guardiansfather():
with open('hallpass_raw.csv') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
with open('outputfiles/guardians_father.csv', mode='w', newline='') as output_file:
write = csv.writer(output_file, delimiter=',', quoting=csv.QUOTE_MINIMAL)
for row in csv_reader:
a = row[0]
b = row[1]
c = row[2]
studentnumber = row[3]
firstname = row[4]
middlename = row[5]
lastname = row[6]
teacher = row[7]
idnumber = row[8]
father = row[9]
# Skip rows with empty father
if father.strip() == '':
continue
mother = row[10]
guardianemail = row[11]
phone = row[12]
fatheremail = row[13]
motheremail = row[14]
guardianphone = row[15]
schoolname = 'NAME OF SCHOOL'
relationship = 'Father'
father_first = father.split(sep=','[0])
father_last = father.split(sep=', '[1])
write.writerow([schoolname, studentnumber, father_first, father_last, relationship, phone, fatheremail])
.