I have a column Values that contain the category examples: New Va,P Va,B... I need to create one column for each category and your respective value
Date Column1 Total Type Values
0 NaN NaN NaN Type1 5.1
1 NaN Column2 Sum Type1 New Va
2 04/2019 2 NaN Type1 NaN
3 05/2019 2 NaN Type1 NaN
4 06/2019 2 2 Type1 14
5 07/2019 4 4 Type1 16
6 NaN NaN NaN Unnamed: 4 NaN
7 NaN Column2 Sum Unnamed: 4 P Va
8 04/2019 2 NaN Unnamed: 4 NaN
9 05/2019 2 NaN Unnamed: 4 NaN
10 06/2019 2 2 Unnamed: 4 10
11 07/2019 4 4 Unnamed: 4 15
12 NaN NaN NaN Unnamed: 5 NaN
13 NaN Column2 Sum Unnamed: 5 B
14 04/2019 2 NaN Unnamed: 5 NaN
15 05/2019 2 NaN Unnamed: 5 NaN
16 06/2019 2 2 Unnamed: 5 8
17 07/2019 4 4 Unnamed: 5 7
18 NaN NaN NaN Type2 4.9
Considering that NAN Data values from Date column will be removed, the expected result is:
Date Column1 Total Type Values New Va P Va B
0 NaN NaN NaN Type1 5.1
1 NaN Column2 Sum Type1 N
2 04/2019 2 NaN Type1 NaN 0
3 05/2019 2 NaN Type1 NaN 0
4 06/2019 2 2 Type1 14 14
5 07/2019 4 4 Type1 16 16
6 NaN NaN NaN Unnamed: 4 NaN
7 NaN Column2 Sum Unnamed: 4 P
8 04/2019 2 NaN Unnamed: 4 NaN 0
9 05/2019 2 NaN Unnamed: 4 NaN 0
10 06/2019 2 2 Unnamed: 4 10 10
11 07/2019 4 4 Unnamed: 4 15 15
12 NaN NaN NaN Unnamed: 5 NaN
13 NaN Column2 Sum Unnamed: 5 B
14 04/2019 2 NaN Unnamed: 5 NaN 0
15 05/2019 2 NaN Unnamed: 5 NaN 0
16 06/2019 2 2 Unnamed: 5 8 8
17 07/2019 4 4 Unnamed: 5 7 7
18 NaN NaN NaN Type2 4.9
After that, I will group by the values from Date to keep the values New Pa, P Va, and B in the same row. I'm trying to use the for to create new columns identifying the
df['New Va'] = np.where(df['Values'].str.contains('New Va'),'N',np.NaN)
However, all lines differents from P and B are NaN, and I don't have the numbers like example above