У меня есть фрейм данных, в котором у меня есть как категориальные, так и числовые столбцы.
data = [['A',"India",10,20,30,15,"Cochin"],['B',"India",10,20,30,40,"Chennai"],['C',"India",10,20,30,15,"Chennai"]]
df = pd.DataFrame(data,columns=['Product','Country',"2016 Total","2017 Total","2018 Total","2019 Total","Region"])
Product Country 2016 Total 2017 Total 2018 Total 2019 Total Region
0 A India 10 20 30 15 Cochin
1 B India 10 20 30 40 Chennai
2 C India 10 20 30 15 Chennai
Я знаю, каковы будут имена столбцов числовых переменных (которые должны быть записаны динамически):
start_year = 2016
current_year = datetime.datetime.now().year
previous_year = current_year - 1
print(current_year)
year_list = np.arange(start_year, current_year+1, 1)
cols_list = []
for i in year_list:
if i <= current_year:
cols = str(i)+" Total"
cols_list.append(cols)
cols_list
[Итого за 2016 год, Итого за 2017 год, Итого за 2018 год, Итого за 2019 год]
Я пытаюсь определить, умножаются ли значения в столбцах cols_list при умноженииотрицательно или нет
Как это можно сделать в пандах? Я не могу понять, как перебрать список cols_list и извлечь столбцы из кадра данных и умножить
Ожидаемый результат:
Product Country 2016 Total 2017 Total 2018 Total 2019 Total Region Negative
0 A India 10 20 30 15 Cochin No
1 B India 10 20 30 40 Chennai No
2 C India 10 20 30 15 Chennai No