Trochu jsem se na tento nový. Já jsem v současné době experimentuje s datových rámců v pythonu a jsem trochu uvízl s něčím. Musím se dostat sloupců v data frame, které mají stejný rozdíl mezi jejich jedinečné seřazené prvky. Jsem schopen udělat v samostatný kód, ale chci, aby to dynamicky tím, že ji z rámečku data v souboru.
import numpy as np
import pandas as pd
first = [20, 10, 40, 30, 10]
sec = [94, 74, 34, 80]
df = pd.DataFrame([(first,sec) for first,sec in zip(first,sec)])
print(df)
cols = list(df.columns)
sorted_df = df.sort_values(by = cols, ascending = True)
print("sorted - \n", sorted_df)
all_unique = [sorted_df[col].unique() for col in cols]
print("UNIQUE:\n", all_unique)
diff = [np.diff(lst) for last in all_unique]
print("DIFF - \n", diff)
Jsem schopen získat seznam seznamy rozdíl. Teď jsem třeba zkontrolovat, zda všechny prvky v rp jsou stejné, pokud ano, pak se vrátit na název sloupce, ať už je to první nebo sec. Výstup jsem dostal, je:
0 1
0 20 94
1 10 74
2 20 34
3 30 80
sorted -
0 1
0 20 94
1 10 74
2 20 30
3 30 80
UNIQUE:
[array([10, 20, 30]), array([74, 34, 94, 80])]
DIFF -
[array([10, 10]), array([-40, 60, -14])]
Po tomhle už by se měl vrátit název sloupce nebo název seznamu, který má stejné prvky. Požadovaný výstup by měl být v seznamu sloupec názvy sloupců, které mají stejný rozdíl řazeny jedinečné prvky. Takže tady by to mělo být:
output - ['first']