我想从字典中创建一个数据框。键的每个值实际上是其中包含多个值的数组。
>>> my_dict = {"a": [1,2,3], "b": [0], "c": [3,5] }
Run Code Online (Sandbox Code Playgroud)
我想要第1列中的所有键以及第2列中的整个值数组。
我已经试过这篇文章。从条目长度不同的字典创建数据框
但是此解决方案将所有值从键分隔到多列。
预期DF应该看起来像这样
>>> df
Key_Column Value_Column
a [1,2,3]
b [0]
c [3,5]
Run Code Online (Sandbox Code Playgroud) 我在下面有一个熊猫数据框:
df
name value1 value2 otherstuff1 otherstuff2
0 Jack 1 1 1.19 2.39
1 Jack 1 2 1.19 2.39
2 Luke 0 1 1.08 1.08
3 Mark 0 1 3.45 3.45
4 Luke 1 0 1.08 1.08
Run Code Online (Sandbox Code Playgroud)
相同的“名称”将对otherstuff1和otherstuff2具有相同的值。
我正在尝试按“名称”列进行分组,并将“值1”列与“值2”列相加(不是将“值1”与“值2”相加!!但要在每列中分别对其求和)
期望得到以下结果:
newdf
name value1 value2 otherstuff1 otherstuff2
0 Jack 2 3 1.19 2.39
1 Luke 1 1 1.08 1.08
2 Mark 0 1 3.45 3.45
Run Code Online (Sandbox Code Playgroud)
我试过了
newdf = df.groupby(['name'], as_index = False).sum()
Run Code Online (Sandbox Code Playgroud)
它按名称分组并正确汇总了value1和value2列,但最终删除了列otherstuff1和otherstuff2。
请帮忙。非常感谢你们!
错误信息:
android.view.InflateException:二进制XML文件行#16:二进制XML文件行#16:在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)错误膨胀类android.support.design.widget.NavigationView
xml文件:
<include
layout="@layout/app_bar_main"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
Run Code Online (Sandbox Code Playgroud)
的build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "edu.zhanglrose_hulman.bigbelly"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.google.android.gms:play-services:9.2.0'
}
Run Code Online (Sandbox Code Playgroud)
styles.xml
<!-- Base application theme. -->
<style name="AppTheme" …Run Code Online (Sandbox Code Playgroud) 我正在尝试从嵌套列表创建一个 panda 数据框,其中包含下面的 ndarray :
from numpy import array
a = list([[1,2],[2,3]])
a[0] = array([[1,2]])
a[0][0] = array([1,2])
Run Code Online (Sandbox Code Playgroud)
我想要实现的目标如下:
D0 D1
1 2
2 3
Run Code Online (Sandbox Code Playgroud)
我试过只使用
pd.DataFrame(a)
Run Code Online (Sandbox Code Playgroud)
这创造了
D0
[1,2]
[2,3]
Run Code Online (Sandbox Code Playgroud)
我还尝试在 for 循环内使用 pd.append
for i in range(0, len(a)):
df = df.append(pd.DataFrame(a[i]))
Run Code Online (Sandbox Code Playgroud)
它实现了我想要的,但速度非常慢,并且 df.append 不知何故创建了重复项。
请帮忙。
提前谢谢。