Mam ramkę danych dla transakcji. Każdy wiersz reprezentuje transakcję dwóch pozycji (pomyśl o tym, jak o transakcji z 2 biletami na wydarzenia lub czymś podobnym). Chcę skopiować każdy wiersz na podstawie sprzedanej ilości.Powielony wiersz na podstawie wartości w innej kolumnie
Oto przykładowy kod:
# dictionary of transactions
d = {'1': ['20', 'NYC', '2'], '2': ['30', 'NYC', '2'], '3': ['5', 'NYC', '2'], \
'4': ['300', 'LA', '2'], '5': ['30', 'LA', '2'], '6': ['100', 'LA', '2']}
columns=['Price', 'City', 'Quantity']
# create dataframe and rename columns
df = pd.DataFrame.from_dict(data=d, orient='index')
df.columns = columns
To daje dataframe który wygląda tak
Price City Quantity
20 NYC 2
30 NYC 2
5 NYC 2
300 LA 2
30 LA 2
100 LA 2
Tak więc w powyższym przypadku, każdy wiersz będzie przekształcić dwóch zduplikowanych wierszy. Jeśli kolumna "ilość" wynosiła 3, wiersz ten przekształciłby się w trzy zduplikowane wiersze.
http://stackoverflow.com/help/mcve - gdzie jest kod, który do tego napisałeś i jaki wynik otrzymałeś *? Dobrze opisałeś pożądany wynik, ale nie wydaje się, żeby w tym przypadku było pytanie StackOverflow. Pamiętaj, że SO jest dla * ustalania * kodu, a nie projektowania i pisania kodu. – Prune
@Prune Nie zgadzam się, wydaje się to pasować do opisu konkretnego problemu programistycznego. OP mógłby wykorzystać pewne wskazówki w określeniu skutecznego sposobu rozwiązania tego problemu. Czasami dana osoba nie wie nawet, od czego zacząć, a brzydka próba rozwiązania po prostu zaśmieca pytanie i marnuje czas wszystkich. –
Doceniam rady @ Prune i ogólnie się z tym zgadzam. Myślę, że to dobry sposób na odfiltrowanie leniwych pytań. Ten problem wprawia mnie jednak w zakłopotanie i nie udało mi się zapewnić sensownego miejsca wyjścia dla rozwiązania. – MRA