python:从多个值中选择一列
我只想使用列索引0来放置我的所有dict[值],数据。 但每当我使用多个值,比如“C”,“D”,索引就会增加 我希望在不增加excel索引的情况下垂直添加我的值。 * 我知道我应该更改python:从多个值中选择一列,python,excel,pandas,dataframe,openpyxl,Python,Excel,Pandas,Dataframe,Openpyxl,我只想使用列索引0来放置我的所有dict[值],数据。 但每当我使用多个值,比如“C”,“D”,索引就会增加 我希望在不增加excel索引的情况下垂直添加我的值。 * 我知道我应该更改orient='index'部分以获得所需的输出。 试图寻找这个特定的代码,但我无法。。。有什么帮助吗 android_report_data_set ={ "A":["APPLE"], "B":["KIWI"], "C":["MANGOJUICE","WATERMELONJUICE","D
orient='index'
部分以获得所需的输出。
试图寻找这个特定的代码,但我无法。。。有什么帮助吗
android_report_data_set ={
"A":["APPLE"],
"B":["KIWI"],
"C":["MANGOJUICE","WATERMELONJUICE","DURIANJUICE"]}
"D":["RED","PINK","BLACK"]}
df = pd.DataFrame.from_dict(android_report_data_set, orient='index')
df.transpose()
*EXPECTED OUTPUT
+----+-----------------+
| | 0 |
+----+-----------------+
| A | APPLE |
| B | KIWI |
| C | MANGOJUICE |
| | WATERMELONJUICE |
| | DURIANJUICE |
| D | RED |
| | PINK |
| | BLACK |
+----+-----------------+
*OUTPUT
+----+------------+---------------------+--------------+
| | 0 | 1 | 2 |
+----+------------+---------------------+--------------+
| A | APPLE | | |
| B | KIWI | | |
| C | MANGOJUICE | WATERMELONJUICE | DURIANJUICE |
| D | RED | PINK | BLACK |
+----+------------+---------------------+--------------+
谢谢 使用with by first level删除第二级,然后通过以下方式将tpo转换为一列DataFrame
:
如果只需要索引中的第一个值,则可以将重复的值替换为空字符串:
df1.index = df1.index.where(~df1.index.duplicated(), '')
print (df1)
0
A APPLE
B KIWI
C MANGOJUICE
WATERMELONJUICE
DURIANJUICE
D RED
PINK
BLACK
上次写入文件时,应省略index=False
,以避免删除索引值('A','B','C','D')
:
对于这样的视图,您需要一个多索引,请尝试堆栈:
df.stack().to_frame()
,如果需要,您还可以使用index=False
将其导出到csv。我的index=False是否应该位于writer=pd.ExcelWriter('report1.xlsx',engine='xlsxriter')
此语句中?df.stack().to_frame().to_excel()(…,index=False)
谢谢!!如果我希望dict(键)保持安全A、B、C、D…,而不是索引行,该怎么办?
df1.index = df1.index.where(~df1.index.duplicated(), '')
print (df1)
0
A APPLE
B KIWI
C MANGOJUICE
WATERMELONJUICE
DURIANJUICE
D RED
PINK
BLACK
df1.to_excel(file)