我有一个非常简单的数据框如下:
A B C
0 2 a a
我的目标是以如下所示的方式提取第一行:
df.loc[0]
如您所见,数据框形状(1x3)被保留,第一行仍有3列。
但是当我输入以下命令df.loc[0]
Out[9]:
A 2
B a
C a
Name: 0, dtype: object
时,输出结果为:
.T
正如您所看到的那行已经变成了一个包含3行的列! (3x1而不是3x1)。这怎么可能?我怎样才能简单地提取行并保持其形状,如我的目标所述?你能提供一种聪明而优雅的方式吗?
我尝试使用转置命令pd.DataFrame({'A':[2], 'B':'a', 'C':'a'})
但没有成功......我知道我可以创建另一个数据帧,其中列由原始数据帧提取但这种方式相当繁琐且不优雅我会说({ {1}})。
如果需要,可以使用以下数据框:
import pandas as pd
df = pd.DataFrame({'A':[2,3,4,1], 'B':['a','s','c','f'], 'C':['a', 3, '!', 1]})
答案 0 :(得分:4)
您需要为public async Task<HttpResponseMessage> PostResult(string url, ResultObject resultObject)
{
using (var client = new HttpClient())
{
HttpResponseMessage response = new HttpResponseMessage();
try
{
response = await client.PostAsJsonAsync(url, resultObject);
}
catch (Exception ex)
{
throw ex
}
return response;
}
}
添加[]
:
DataFrame
或者:
#select by index value
print (df.loc[[0]])
A B C
0 2 a a
如果需要转置print (df.iloc[[0]])
A B C
0 2 a a
,首先需要通过to_frame
将其转换为Series
:
DataFrame
答案 1 :(得分:2)
使用范围选择器将保留Dataframe格式。
df.iloc[0:1]
Out[221]:
A B C
0 2 a a