For susceptibility mapping, you need to extract point values (for both presence and absent like landslide location with value 1 and non-landslide location with value 0) for causing factor raster maps in ArcGIS. Then export those values as .txt file.
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
0
493397.4785
1
1
484881.6734
2
2
475180.8934
3
3
473087.6466
4
4
508983.2839
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
nan
0
1
nan
1
2
nan
2
3
nan
3
4
nan
4
0
0
530759.3982
1
1
534027.3446
2
2
536666.0573
3
3
537685.1156
4
4
482370.0077
0
0
493397.4785
1
1
484881.6734
2
2
475180.8934
3
3
473087.6466
4
4
508983.2839
5
5
558576.1586
6
6
464046.8538
7
7
465389.2384
8
8
463417.084
9
9
535324.8739
Now all points values for landslide, non-landslide are in one data frame. Last column (Landslide) with 0 and 1 values are also stacked together. You can check total no of rows and see if they are equal to sum of landslide, non-landslide data frames.
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 120 entries, 0 to 119
Data columns (total 16 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Land_poi 120 non-null int64
1 X 120 non-null float64
2 Y 120 non-null float64
3 DEM 120 non-null int64
4 ASPECT 120 non-null float64
5 SPI 120 non-null float64
6 LULC 120 non-null int64
7 GEO 120 non-null int64
8 FAULT 120 non-null int64
9 RAIN 120 non-null int64
10 RIVER_BUFF 120 non-null int64
11 ROAD_BUFF 120 non-null int64
12 CURVA 120 non-null float64
13 TWI 120 non-null float64
14 SLOPE 120 non-null float64
15 Landslide 120 non-null int64
dtypes: float64(7), int64(9)
memory usage: 15.1 KB
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 120 entries, 0 to 119
Data columns (total 16 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Land_poi 120 non-null int64
1 X 120 non-null float64
2 Y 120 non-null float64
3 DEM 120 non-null int64
4 ASPECT 120 non-null float64
5 SPI 120 non-null float64
6 LULC 120 non-null int64
7 GEO 120 non-null int64
8 FAULT 120 non-null int64
9 RAIN 120 non-null int64
10 RIVER_BUFF 120 non-null int64
11 ROAD_BUFF 120 non-null int64
12 CURVA 120 non-null float64
13 TWI 120 non-null float64
14 SLOPE 120 non-null float64
15 Landslide 120 non-null int64
dtypes: float64(7), int64(9)
memory usage: 15.1 KB
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 240 entries, 0 to 239
Data columns (total 16 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Land_poi 240 non-null int64
1 X 240 non-null float64
2 Y 240 non-null float64
3 DEM 240 non-null int64
4 ASPECT 240 non-null float64
5 SPI 240 non-null float64
6 LULC 240 non-null int64
7 GEO 240 non-null int64
8 FAULT 240 non-null int64
9 RAIN 240 non-null int64
10 RIVER_BUFF 240 non-null int64
11 ROAD_BUFF 240 non-null int64
12 CURVA 240 non-null float64
13 TWI 240 non-null float64
14 SLOPE 240 non-null float64
15 Landslide 240 non-null int64
dtypes: float64(7), int64(9)
memory usage: 30.1 KB
Shuffled DataFrame:
Land_poi X Y DEM ASPECT SPI LULC \
167 47 550077.160599 4.020553e+06 3818 45.000000 1.789182 2
233 113 524888.306006 4.056844e+06 4447 40.236359 10.940249 2
124 4 482370.007675 4.094981e+06 4300 157.750977 2.889572 4
232 112 523812.577247 4.058925e+06 3728 270.000000 1.198959 2
219 99 475172.293885 4.070998e+06 4593 31.429565 1.692323 2
.. ... ... ... ... ... ... ...
110 110 478853.966556 4.064470e+06 3339 182.700623 5.992255 2
152 32 476366.243144 4.059682e+06 5338 133.331665 6.437299 2
133 13 523301.554683 4.076415e+06 3879 176.877869 3.900618 4
158 38 442394.682738 4.012852e+06 1778 28.610458 1.191137 4
13 13 467340.202879 4.020747e+06 2704 170.148666 5.006762 2
GEO FAULT RAIN RIVER_BUFF ROAD_BUFF CURVA TWI SLOPE \
167 7 4 1 1 105 -0.055362 6.263196 5.774558
233 10 4 1 2 105 -0.415230 14.636011 8.638372
124 10 4 1 105 105 -0.122170 3.776511 32.462746
232 10 4 1 1 105 -0.000000 6.853418 3.063925
219 8 4 1 3 105 -0.018096 4.973760 10.657889
.. ... ... ... ... ... ... ... ...
110 8 4 2 1 105 -0.152184 6.089928 43.431297
152 8 4 2 105 105 0.036191 7.281505 33.024563
133 10 4 1 1 1 -0.045752 6.924348 12.125588
158 1 4 3 1 1 0.112120 5.474946 6.378107
13 5 2 2 3 2 -0.101391 5.551142 37.091473
Landslide
167 0
233 0
124 0
232 0
219 0
.. ...
110 1
152 0
133 0
158 0
13 1
[240 rows x 16 columns]
0
47
550077.1606
1
113
524888.306
2
4
482370.0077
3
112
523812.5772
4
99
475172.2939
So, we now have a data frame for landslide points and non-landslide points. This data frame will be used for training machine learning model. For prediction, we need all these factors values for all the study area (each pixel value), and then we will do the prediction for that data frame based on training data frame. Data preparation for prediction data frame will be covered in the next tutorial.