您知道如何将DataFrame的索引或列作为NumPy数组或python列表获取吗?
我根据满足的另一列中的条件从列中提取数据的子集.
我可以返回正确的值,但它位于pandas.core.frame.DataFrame中.如何将其转换为列表?
import pandas as pd
tst = pd.read_csv('C:\\SomeCSV.csv')
lookupValue = tst['SomeCol'] == "SomeValue"
ID = tst[lookupValue][['SomeCol']]
#How To convert ID to a list
Run Code Online (Sandbox Code Playgroud) 我有一个包含多列的Python dataFrame.
LogBlk Page BayFail
0 0 [0, 1, 8, 9]
1 16 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
2 32 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
3 48 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
Run Code Online (Sandbox Code Playgroud)
我想找到与LogBlk = 0和Page = 0相关联的BayFails.
df2 = df[ (df['Page'] == 16) & (df['LogBlk'] == 0) ]['BayFail']
Run Code Online (Sandbox Code Playgroud)
这将返回[0,1,8,9]
我想要做的是将此pandas.series转换为列表.有谁知道这是怎么做到的吗?
我有一个像这样的数据框
已经服用 12 天,同时服用 60 毫克百忧解 4 年多了。索引句
1 I feel the best I have felt in years.
2 "I have taken for over 7 years.
3 I slept 2 hours".
4 IT SAVED MY LIFE
5 IT SAVED MY LIFE"
Run Code Online (Sandbox Code Playgroud)
然后我想将它们连接在一个数组中。问题是,可能有一些句子重复,但我仍然想保留所有句子,所以结果将是:
["I feel the best I have felt in years", "I have taken for over 7 years." , "I slept 2 hours." , "IT SAVED MY LIFE" , "IT SAVED MY LIFE"]
Run Code Online (Sandbox Code Playgroud)
我也尝试过这种方法:
dfsent.groupby(['sentences']).apply(','.join) …Run Code Online (Sandbox Code Playgroud) 从数据框列中提取字符串列表,如我的代码所示:
d = {'text': ["Hello", "How are you","From","Liban"]}
df = pd.DataFrame(data=d)
df
Run Code Online (Sandbox Code Playgroud)
我的清单会有
List_text = ["Hello","How are you","From","Liban"].
Run Code Online (Sandbox Code Playgroud)
谢谢
我有一只DataFrame像熊猫一样的熊猫
clusters
0 [4]
1 [9, 14, 16, 19]
2 [6, 7, 10, 17, 18, 20]
3 [1, 2, 3, 5, 8, 11, 12, 13, 15]
Run Code Online (Sandbox Code Playgroud)
我需要分别只获取集群列中的整数值.喜欢以下(这可以是四个列表,不需要另一个DataFrame)
0 4
1 9, 14, 16, 19
2 6, 7, 10, 17, 18, 20
3 1, 2, 3, 5, 8, 11, 12, 13, 15
Run Code Online (Sandbox Code Playgroud)
我尝试了不同的东西.无法达到预期的产量.
In [36]: clustlist = list(firstclusters.clusters.values)
Out[36]:
[array([4]), array([ 9, 14, 16, 19]), array([ 6, 7, 10, 17, 18, 20]), array([ 1, 2, 3, 5, …Run Code Online (Sandbox Code Playgroud) 我有这样的数据帧:
platform count
release_year
1996 PlayStation 138
1997 PlayStation 170
1998 PlayStation 155
1999 PC 243...
Run Code Online (Sandbox Code Playgroud)
现在我想在相应的条形图中使用平台名称绘制水平条形图,使其看起来像这样:
我怎么做?
结尾 更新结尾更新 2
我从这里阅读: 从熊猫数据框列中获取列表
当您将 Pandas DataFrame 列拉出时,它们就是 Pandas 系列
但是,在我的情况下,情况并非如此:
第一部分(构建 DataFrame 读取 json 抓取)因为它包含业务信息,我无法显示完整代码,但基本上它读取一行数据(存储在系列中)并附加到 DataFrame 的末尾。
dfToWrite = pandas.DataFrame(columns=[lsHeader]) # Empty with column headers
for row in jsAdtoolJSON['rows']:
lsRow = []
for col in row['row']:
lsRow.append((col['primary'])['value'])
dfRow = pandas.Series(lsRow, index = dfToWrite.columns)
dfToWrite = dfToWrite.append(dfRow, ignore_index = True)
Run Code Online (Sandbox Code Playgroud)
下一部分(检查类型):(请忽略函数的功能)
def CalcMA(df: pandas.DataFrame, target: str, period: int, maname: str):
print(type(df[target]))
Run Code Online (Sandbox Code Playgroud)
最后调用函数:(“Raw_Impressions”是列标题)
CalcMA(dfToWrite, "Raw_Impressions", 5, "ImpMA5")
Run Code Online (Sandbox Code Playgroud)
Python 控制台显示:
类'pandas.core.frame.DataFrame'
附加问题:如果不是系列(在这种情况下我可以使用tolist()),如何从 Dataframe 列中获取列表?
更新 1 …
数据框中的列具有值'abc,def,ghi'。我想制作一个这样的数组:['abc','def','ghi']