给出此示例:
public class HowdyJFX extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
final String javaVersion = System.getProperty("java.version");
final String javafxVersion = System.getProperty("javafx.version");
final Label l = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".");
final Scene scene = new Scene(new StackPane(l), 640, 480);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch();
}
}
现在Eclipse
看起来像这样:
start()
已经生成了df = pd.DataFrame(data=[(1, 'A', 5.0, 0.0),
(2, 'A', 3.0, 0.0),
(1, 'B', 1.0, 0.0),
(2, 'B', 2.0, 0.0),
(1, 'C', 6.0, 2.0)],
columns=('Date', 'Name', 'limit', 'allocation')).set_index(['Date','Name'])
groups = df.groupby('Date')
group = groups.get_group(1)
groupSorted = group.sort_values(by='limit', ascending=False)
子DataFrame,我希望第一行的groupSorted
limit allocation
Date Name
1 C 6.0 2.0
A 5.0 0.0
B 1.0 0.0
公式满足groupSorted
为0 < / strong>。我该怎么办?
我找到了各种方法来选择具有该条件的第一行。例如,
set
...,甚至是我想要更改的获取 值的方法:
allocation
但是没有一个允许我设置这个值。 如何设置该值,使其“粘贴”在原始的allocation
和groupSorted[groupSorted.allocation == 0].iloc[0]
groupSorted[groupSorted.allocation == 0].head(1)
中?
答案 0 :(得分:0)
从评论到问题:
要分配给groupSorted
,我们可以使用:
groupSorted.loc[(groupSorted['allocation'] == 0).idxmax(), 'allocation'] = 123
要在原始DataFrame中将分配分配给“ stick”,我们可以这样做:
df.at[(groupSorted['allocation'] == 0).idxmax()] = 123