EHB*_*EHB 6 python naming dataframe pandas
我无法从 3 个单独的数字构建数据框。我想这样做是为了让函数返回数据帧,然后将其附加到其他现有结果。
所需的结果是一个包含名为“a”、“b”和“C”的列的数据框,每个列都包含 a、b 和 c 的值。
尝试一:
a=1
b=2
c=3
dat=pd.DataFrame([a,b,c], columns=list('abc')) #fails with size error
Run Code Online (Sandbox Code Playgroud)
尝试两个:
dat=pd.DataFrame()
dat['a']=pd.np.nan
dat['b']=pd.np.nan
dat['c']=pd.np.nan
dat['c']=c # no numbers are added to the column; still has 0 rows
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?
想要的结果是:
a | b | c
-------------
1 | 2 | 3
Run Code Online (Sandbox Code Playgroud)
请注意,您应该遵循冷和 jpp 的构造来创建一行数据框,但在这里我尝试修复您的代码。将 DataFrame 调用更改为
pd.Series([a,b,c], index=list('abc')).to_frame(0).T
Out[15]:
a b c
0 1 2 3
Run Code Online (Sandbox Code Playgroud)
pd.DataFrame([[a, b, c]], columns=['a', 'b', 'c'])
a b c
0 1 2 3
Run Code Online (Sandbox Code Playgroud)
请注意,您的“奖金询问”实际上是不可能的,因为一个对象可能与多个变量相关联(想想看)。
但是,您可以考虑使用字典。
data = {'a' : 1, 'b' : 2, 'c' : 3}
pd.DataFrame(data, index=[0]) # the `index` argument is important
a b c
0 1 2 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14877 次 |
| 最近记录: |