我有一个数据框,其中一个特定列具有一组特定值(比方说,1,2,...,23).我想要做的是从这个布局转换为一个框架,其中框架将有额外的23(在这种情况下)列,每个列代表一个因子值.这些列中的数据将是布尔值,表示特定行是否具有给定的因子值...要显示特定示例:
来源框架:
ID DATE SECTOR
123 2008-01-01 1
456 2008-01-01 3
789 2008-01-02 5
... <more records with SECTOR values from 1 to 5>
Run Code Online (Sandbox Code Playgroud)
所需格式:
ID DATE SECTOR.1 SECTOR.2 SECTOR.3 SECTOR.4 SECTOR.5
123 2008-01-01 T F F F F
456 2008-01-01 F F T F F
789 2008-01-02 F F F F T
Run Code Online (Sandbox Code Playgroud)
我在循环中做这个没有问题,但我希望有更好的方法.到目前为止reshape()
没有产生预期的结果.非常感谢帮助.
我正在尝试重塑R中的数据框,并且使用推荐的方法似乎有问题.数据框具有以下结构:
ID DATE1 DATE2 VALTYPE VALUE
'abcd1233' 2009-11-12 2009-12-23 'TYPE1' 123.45
...
Run Code Online (Sandbox Code Playgroud)
VALTYPE
是一个字符串,并且与只有2值(说的因子TYPE1
和TYPE2
).我需要根据公共ID和DATE将其转换为以下数据框("宽"转置):
ID DATE1 DATE2 VALUE.TYPE1 VALUE.TYPE2
'abcd1233' 2009-11-12 2009-12-23 123.45 NA
...
Run Code Online (Sandbox Code Playgroud)
数据框有超过4,500,000个观测值(尽管约有70%是VALUE
s NA
).该机器是基于Intel的Linux工作站,具有4Gb RAM.将数据(从压缩的Rdata文件)加载到新的R进程使其增长到大约250Mb,这显然留下了大量的重塑空间.
这是我迄今为止的经历:
使用vanilla reshape()
方法:
tbl2 < - reshape(tbl,direction ="wide",idvar = c("ID","DATE1","DATE2"),timevar ="VALTYPE");
结果: Error: cannot allocate vector of size 4.8 Gb
使用cast()
方法reshape
包:
tbl2 < - cast(tbl,ID + DATE1 + DATE2~VALTYPE);
结果:R进程消耗所有RAM,看不到尽头.不得不最终杀死这个过程.
使用by()
和merge()
:
sp < - by(tbl [c(1,2,3,5)],tbl …
我ProgressBar
在我的应用程序中有一个小部件,无论我做什么,它总是显示为胖橙色(2.x样式)而不是淡蓝色(4.x样式).
SDK版本要求设置如下:
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="14"/>
Run Code Online (Sandbox Code Playgroud)应用程序主题设置为 Theme.Holo
进度条本身定义如下:
<ProgressBar
android:id="@+id/progressBar1"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginRight="16dp"
android:layout_marginLeft="16dp"
android:theme="@android:style/Theme.Holo" />
Run Code Online (Sandbox Code Playgroud)(明确设置主题是将其转换为新样式的最新尝试).
有什么我想念的吗?
(Xcode 11,斯威夫特)
作为 iOS 和 Autolayout 的新手,我正在努力实现一个相当简单的(恕我直言)视图,该视图显示 [垂直] 项目列表。唯一的问题是项目是动态决定的,每个项目都可以是文本或图像(其中任何一个都可能相当大,因此需要滚动)。WebView 不是一个选项,所以它必须在本地实现。
我是这样理解这个过程的:
这是正确的方法吗?它似乎对我不起作用(对于将非常高的图像动态添加到容器视图的玩具示例 - 我无法滚动工作)。执行上述过程中最后一步的正确方法是什么 - 只需将滚动视图的 contentSize 强制为填充的容器视图的大小(它似乎对我不起作用)。任何帮助,将不胜感激。
我正在尝试让我的应用程序在真正的全屏(无状态栏,无操作栏)和"正常模式"(操作栏和状态栏)之间切换.为此,我在叠加模式下设置了一个操作栏,我允许用户切换操作栏和状态栏:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
actionBar.show();
Run Code Online (Sandbox Code Playgroud)
..并且关闭:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
actionBar.hide();
Run Code Online (Sandbox Code Playgroud)
只需一个例外就可以正常工作:无论何时发生这些操作,都会调整实际布局的大小.好吧,还有另一个标志,显然只是为了这个,所以我添加到我的onCreate()
:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
Run Code Online (Sandbox Code Playgroud)
好的,现在调整大小不再是一个问题,但是现在我的操作栏被状态栏遮挡了一半,只要两者都打开:
有什么我想念的吗?如何使操作栏正确显示在状态栏的正下方?
升级到版本 2022.3.1 (Giraffe) 后,我在 Mac Intel 上的 Android Studio 停止生成 Flutter 项目。我尝试完全清除 Android Studio 并重新安装 - 相同的结果。Flutter 和 Dart 插件均已安装。Flutter 已安装(3.10.6),并flutter doctor
给了它一个奇怪的东西:Android Studio 插件(它们是),它说:
Android Studio (version 2022.3)\n \xe2\x80\xa2 Android Studio at /Applications/Android Studio.app/Contents\n \xe2\x80\xa2 Flutter plugin can be installed from:\n https://plugins.jetbrains.com/plugin/9212-flutter\n \xe2\x80\xa2 Dart plugin can be installed from:\n https://plugins.jetbrains.com/plugin/6351-dart\n \xe2\x80\xa2 Java version OpenJDK Runtime Environment (build\n 17.0.6+0-17.0.6b829.9-10027231)\n
Run Code Online (Sandbox Code Playgroud)\n通过创建项目flutter create
按预期
症状如下:
\nandroid ×3
r ×2
factors ×1
flutter ×1
ios ×1
overlay ×1
performance ×1
progress-bar ×1
reshape ×1
statusbar ×1
storyboard ×1
swift ×1
uiscrollview ×1
xcode ×1