data.table
对每一行中的值进行排序的方式是什么?我可以轻松地编写一个循环进行逐行排序的循环,但是我想这不是一种很聪明的处理方式。
示例:
让我们有一个data.table
,例如:
df = data.table(ID = c('a', 'b', 'c', 'd', 'e', 'f'),
v1 = c(1,2,1,3,4,5),
v2 = c(2,3,6,1,0,2),
v3 = c(0,0,1,2,3,5))
我可以使用for loop
对此进行排序,如下所示:
for (i in 1:nrow(df))
{
df[i, 2:4] = sort(df[i, 2:4], decreasing = T)
}
它给出了预期的结果:
ID v1 v2 v3
1: a 2 1 0
2: b 3 2 0
3: c 6 1 1
4: d 3 2 1
5: e 4 3 0
6: f 5 5 2
但这似乎是做事很慢的方式。
答案 0 :(得分:2)
您必须使用<Toolkit:DataGrid ItemsSource="{Binding People}" x:Name="DeptListView"
SelectionMode="Multiple" DefaultOrderIndex="1"
SelectedItem="{Binding SelectedPerson, Mode=TwoWay}" >
<Toolkit:DataGrid.Columns>
<Toolkit:DataGridTextColumn >
<Toolkit:DataGridTextColumn.Header>
<CheckBox Content="Select All" ></CheckBox>
</Toolkit:DataGridTextColumn.Header>
</Toolkit:DataGridTextColumn>
<Toolkit:DataGridTextColumn Width="200" Header="CustID"
Binding="{Binding CustID}"/>
<Toolkit:DataGridTextColumn Width="200" Header="company name"
Binding="{Binding name}"/>
<Toolkit:DataGridTextColumn Width="200" Header="ContactName"
Binding="{Binding ContactName}"/>
<Toolkit:DataGridTextColumn Width="200" Header="Country"
Binding="{Binding Country}"/>
</Toolkit:DataGrid.Columns>
</Toolkit:DataGrid>
吗?使用data.table
方法的基数R apply
呢?
MARGIN = 1