Random_state can be 0 or 1 or any other integer. It should be the same value if you want to validate your processing over multiple runs of the code. By the way, I have seen random_state=42 used in many official examples of scikit.
the random_state parameter is used for initializing the internal random number generator, which will decide the splitting of data into train and test indices in your case.
If random_state is None or np.random, then a randomly-initialized RandomState object is returned.
If random_state is an integer, then it is used to seed a new RandomState object.
This is to check and validate the data when running the code multiple times. Setting random_state a fixed value will guarantee that the same sequence of random numbers is generated each time you run the code.
Hope this answer helps you! Thus, for more details, studying concepts about Python For Data Science could be beneficial.