我已经将文件中的数据导入到R中的数据框中.就像这样.
Name Count Category
A 100 Cat1
C 10 Cat2
D 40 Cat1
E 30 Cat3
H 3 Cat3
Z 20 Cat2
M 50 Cat10
Run Code Online (Sandbox Code Playgroud)
所以现在我想添加Category列,具体取决于Name列中的值.如果Name =(A,D),Category ='Cat1'等等.
这只是我给出的一个简单例子.我有大量的名称和类别,所以我想要一个紧凑的语法.我怎样才能做到这一点?
编辑:我已经更改了示例以更好地满足我的需求,因为名称可以是任何数字.很抱歉以前不太清楚.
我看到以下问题解释了如何从下拉列表中获取所选项目: -
http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/d1cf7b3e-68cf-4b82-b806-a3431acde3b6/
上面的线程建议事先获得项目的哈希表,在下拉列表的onAction()中缓存选定的id,并使用该选定的id从按钮的onAction()中的哈希表中查找项目.
但是,就我而言,我从数据库中填充了功能区XML.这个功能区XML显然有用于下拉列表的XML,我使用宏来与功能区中的下拉列表和其他控件进行交互.我不确定如何预先设置一个可以由宏使用的集合,类似于上述线程中描述的方法.
我正在尝试使用NSMutableArray的NSMutableArray存储数组int [9] [9],其中我存储了数组中的81个整数:
- (void)awakeFromNib {
// initialization matrix
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
matrix[i][j] = 0;
}
}
// Creating NSMutableArray instance
TGrid = [NSMutableArray arrayWithCapacity:10];
[self saveGrid];
}
- (void)saveGrid {
NSNumber *aInt;
NSMutableArray *Grid = [NSMutableArray arrayWithCapacity:81];
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
aInt = [NSNumber numberWithInt:matrix[i][j]];
[Grid …Run Code Online (Sandbox Code Playgroud) 我在c#中有一个三个List,变量名是l_lstData1, l_lstData2, l_lstData3.
文件结构是
<FileDetails>
<Date FileModified="29/04/2010 12:34:02" />
<Data Name="Data_1" DataList="India" Level="2" />
<Data Name="Data_2" DataList="chennai" Level="2" />
<Data Name="Data_3" DataList="hyderabad" Level="2" />
<Data Name="Data_4" DataList="calcutta" Level="2" />
<Data Name="Data_5" DataList="vijayawada" Level="1" />
<Data Name="Data_6" DataList="cochin" Level="1" />
<Data Name="Data_7" DataList="madurai" Level="0" />
<Data Name="Data_8" DataList="trichy" Level="0" />
</FileDetails>
Run Code Online (Sandbox Code Playgroud)
3个列表的值如下:
l_lstData1[0] = "India";
l_lstData1[1] = "chennai";
l_lstData1[2] = "hyderabad";
l_lstData1[3] = "calcutta";
Run Code Online (Sandbox Code Playgroud)
所以上面的XML(element:Data)的level属性值="2".
l_lstData2[0] = "vijayawada";
l_lstData2[1] = "cochin";
Run Code Online (Sandbox Code Playgroud)
所以上面的XML(element:Data)的level属性值="1".
l_lstData3[0] = "madurai";
l_lstData3[1] = "trichy";
Run Code Online (Sandbox Code Playgroud)
所以上面的XML(element:Data)的level属性值为"0".
如何在Embperl中执行类似'print Dumper $ var'的操作 - 我这样做了:
[-
$var = (some hash) ;
use Data::Dumper
print Dumper $var
-]
Run Code Online (Sandbox Code Playgroud)
还有这个
[+ Dumper $var +]
Run Code Online (Sandbox Code Playgroud)
......但无法获得任何输出.
我需要更新几百个静态HTML页面,这些页面的页脚版权日期是硬编码的.我想用一些每年会自动更新的JavaScript替换它.
目前我正在使用:
<script type="text/javascript">var year = new Date();document.write(year.getFullYear());</script>
Run Code Online (Sandbox Code Playgroud)
这是短暂的吗?
当您使用Eclipse PDE(插件开发环境)时,有一个术语"目标平台".这究竟是什么意思?
我搜索了主题优惠,但没有设法让一个...
对不起,如果我误会了.如果是,请在此处指出正确的问题.
好的,回到商界.情况:我正在使用ShowMessage()作为应用程序中某些事件的简单"状态简报"提供程序:
procedure SatusBriefingDialog();
begin
if Sender = SomeObject then
begin
Application.NormalizeToMosts;
MessageDlg(Handle, PChar('The_string_that_forms_nice_informative_window / dialog'));
Application.RestoreTopMosts;
end;
end;
Run Code Online (Sandbox Code Playgroud)
现在,我想打磨它,因此我想使用扩展的ascii表,但是,我无法选择访问它们的最佳方式.也许我只是不知道那个神奇的功能......
以下是使用OEMToANSI/OEMToChar和反向功能的方法:http://www.experts-exchange.com/Programming/Languages/Pascal/Delphi/Q_20381022.html.我尝试了它们没有运气,因为:
来自EDN/MS-Help的语法
BOOL OemToChar(LPCSTR lpszSrc,LPTSTR lpszDst);
参数
lpszSrc [in]指向OEM定义的字符集中以空字符结尾的字符串的指针.
lpszDst [out]指向已翻译字符串的缓冲区的指针.
如果将OemToChar函数用作ANSI函数,则可以通过将lpszDst参数设置为与lpszSrc参数相同的地址来转换字符串.如果将OemToChar用作宽字符函数,则无法执行此操作.
我需要的是Char(Ord(170)); ,Char(Ord(180)); 和查尔(奥德(190)) - http://www.asciitable.com/.显然,使用默认的WInXP代码页我不能使用它们.现在,我谷歌了一下,找到了这个解决方案:
FormShow事件代码:
procedure TMain.FormShow(Sender: TObject);
var
i : longint;
begin
re.Font.Name := 'Terminal';
re.Font.Size := 9;
//seems that charset must be set last
re.Font.Charset := OEM_CHARSET;
re.DefAttributes.Name := 'Terminal';
re.DefAttributes.Size := 9;
re.DefAttributes.Charset …Run Code Online (Sandbox Code Playgroud)