我有一个交易数据框.每行代表两个项目的交易(将其视为2个事件票据或其他事务的交易).我想根据销售数量复制每一行.
这是示例代码:
# 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
Run Code Online (Sandbox Code Playgroud)
这会生成一个如下所示的数据框
Price City Quantity
20 NYC 2
30 NYC 2
5 NYC 2
300 LA 2
30 LA 2
100 LA 2
Run Code Online (Sandbox Code Playgroud)
因此,在上面的情况中,每行将转换为两个重复的行.如果'quantity'列为3,那么该行将转换为三个重复行.
我有一个带有交易的数据框。索引是交易日期(时间戳),列是价格(浮动)、城市(字符串)和产品名称(字符串)。我想在数据框中添加一个新列,其中包含每个城市中每种产品的最低价格。因此,对于城市和产品相同的每一行,第四列将具有相同的值。
这是示例代码:
# dictionary of transactions
d = {'1': ['20', 'NYC', 'Widget A'], '2': ['30', 'NYC', 'Widget A'], '3': ['5', 'NYC', 'Widget A'], \
'4': ['300', 'LA', 'Widget B'], '5': ['30', 'LA', 'Widget B'], '6': ['100', 'LA', 'Widget A']}
columns=['Price', 'City', 'Product']
# create dataframe and rename columns
df = pd.DataFrame.from_dict(data=d, orient='index')
df.columns = columns
Run Code Online (Sandbox Code Playgroud)
这会产生一个看起来像这样的数据框
Price City Product
1 20 NYC Widget A
2 30 NYC Widget A
3 5 NYC Widget A
4 300 LA Widget B
5 …Run Code Online (Sandbox Code Playgroud)