Панды: разделить DataFrame в заданном соотношении
Панды: DataFrame Exercise-38 с решением
Напишите программу Pandas для разделения DataFrame в заданном соотношении.
Пример данных :
Исходный DataFrame:
0 1
0 0.316147 -0.767359
1 -0,813410 -2,522672
2 0,869615 1,194704
3 -0,892915 -0,055133
4 -0,341126 0,518266
5 1,857342 1,361229
6 -0,044353 -1,2005002
7 -0,726346 -0,535147
8 -1,350726 0,563117
9 1.051666 -0.441533
70% указанного DataFrame:
0 1
8 -1,350726 0,563117
2 0,869615 1,194704
5 1,857342 1,361229
6 -0,044353 -1,2005002
3 -0,892915 -0,055133
1 -0,813410 -2,522672
0 0.316147 -0.767359
30% указанного DataFrame:
0 1
4 -0,341126 0,518266
7 -0,726346 -0,535147
9 1.051666 -0.441533
Пример решения :
Код Python:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(10, 2))
print("Original DataFrame:")
print(df)
part_70 = df.sample(frac=0.7,random_state=10)
part_30 = df.drop(part_70.index)
print("\n70% of the said DataFrame:")
print(part_70)
print("\n30% of the said DataFrame:")
print(part_30)
Пример вывода:
Исходный DataFrame: 0 1 0 0.316147 -0.767359 1 -0,813410 -2,522672 2 0,869615 1,194704 3 -0,892915 -0,055133 4 -0,341126 0,518266 5 1,857342 1,361229 6 -0,044353 -1,2005002 7 -0,726346 -0,535147 8 -1,350726 0,563117 9 1.051666 -0.441533 70% указанного DataFrame: 0 1 8 -1,350726 0,563117 2 0,869615 1,194704 5 1,857342 1,361229 6 -0,044353 -1,2005002 3 -0,892915 -0,055133 1 -0,813410 -2,522672 0 0.316147 -0.767359 30% указанного DataFrame: 0 1 4 -0,341126 0,518266 7 -0,726346 -0,535147 9 1.051666 -0.441533
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу Pandas для сброса индекса в данном DataFrame.
Далее: Написать программу Pandas для объединения двух серий в DataFrame.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования