我有一个如下的Python字典:
{u'2012-06-08': 388,
u'2012-06-09': 388,
u'2012-06-10': 388,
u'2012-06-11': 389,
u'2012-06-12': 389,
u'2012-06-13': 389,
u'2012-06-14': 389,
u'2012-06-15': 389,
u'2012-06-16': 389,
u'2012-06-17': 389,
u'2012-06-18': 390,
u'2012-06-19': 390,
u'2012-06-20': 390,
u'2012-06-21': 390,
u'2012-06-22': 390,
u'2012-06-23': 390,
u'2012-06-24': 390,
u'2012-06-25': 391,
u'2012-06-26': 391,
u'2012-06-27': 391,
u'2012-06-28': 391,
u'2012-06-29': 391,
u'2012-06-30': 391,
u'2012-07-01': 391,
u'2012-07-02': 392,
u'2012-07-03': 392,
u'2012-07-04': 392,
u'2012-07-05': 392,
u'2012-07-06': 392}
Run Code Online (Sandbox Code Playgroud)
键是Unicode日期,值是整数.我想通过将日期及其对应的值作为两个单独的列将其转换为pandas数据帧.示例:col1:日期col2:DateValue(日期仍为Unicode,日期值仍为整数)
Date DateValue
0 2012-07-01 391
1 2012-07-02 392
2 2012-07-03 392
. 2012-07-04 392
. ... ...
. …Run Code Online (Sandbox Code Playgroud) 我有2个数据帧:
restaurant_ids_dataframe
Data columns (total 13 columns):
business_id 4503 non-null values
categories 4503 non-null values
city 4503 non-null values
full_address 4503 non-null values
latitude 4503 non-null values
longitude 4503 non-null values
name 4503 non-null values
neighborhoods 4503 non-null values
open 4503 non-null values
review_count 4503 non-null values
stars 4503 non-null values
state 4503 non-null values
type 4503 non-null values
dtypes: bool(1), float64(3), int64(1), object(8)`
Run Code Online (Sandbox Code Playgroud)
和
restaurant_review_frame
Int64Index: 158430 entries, 0 to 229905
Data columns (total 8 columns):
business_id 158430 non-null …Run Code Online (Sandbox Code Playgroud) 我有一个表格的字典对象:
my_dict = {id1: val1, id2: val2, id3: val3, ...}
Run Code Online (Sandbox Code Playgroud)
我想将其创建为一个DataFrame,我想在其中列出2列'business_id'和'business_code'.
我试过了:
business_df = DataFrame.from_dict(my_dict,orient='index',columns=['business_id','business_code'])
Run Code Online (Sandbox Code Playgroud)
但它表示from_dict没有采用列论证.
TypeError:from_dict()得到一个意外的关键字参数'columns'
我有一个多图对象,并希望将其转换为带有加权边的简单图形对象.我查看了networkx文档,似乎无法找到实现此功能的内置函数.我只是想知道是否有人知道networkx中可以实现这一目标的内置函数.我查看了to_directed(),to_undirected()函数,但它们不能满足我的目标.
我的dataFrame有以下结构:
Index: 1008 entries, Trial1.0 to Trial3.84
Data columns (total 5 columns):
CHUNK_NAME 1008 non-null values
LAMBDA 1008 non-null values
BETA 1008 non-null values
HIT_RATE 1008 non-null values
AVERAGE_RECIPROCAL_HITRATE 1008 non-null values
chunks=['300_321','322_343','344_365','366_387','388_408','366_408','344_408','322_408','300_408']
lam_beta=[(lambda1,beta1),(lambda1,beta2),(lambda1,beta3),...(lambda1,beta_n),(lambda2,beta1),(lambda2,beta2)...(lambda2,beta_n),........]
my_df.ix[my_df.CHUNK_NAME==chunks[0]&my_df.LAMBDA==lam_beta[0][0]]
Run Code Online (Sandbox Code Playgroud)
我想获取特定块的Dataframe行,可以说chunks [0]和特定的lambda值.因此,在这种情况下,输出应该是数据帧中具有CHUNK_NAME ='300_321'和LAMBDA = lambda1的所有行.对于每个将返回的beta值,将有n行.但相反,我得到了以下错误.任何帮助解决这个问题将不胜感激.
TypeError: cannot compare a dtyped [float64] array with a scalar of type [bool]
Run Code Online (Sandbox Code Playgroud) 我有一个myDir 很多.html文件的目录.我正在尝试创建目录中所有文件的数组,以便我可以索引数组并能够引用目录中的特定html文件.我试过以下一行:
myFileNames=$(ls ~/myDir)
for file in $myFileNames;
#do something
Run Code Online (Sandbox Code Playgroud)
但我想能够有一个计数器变量,并具有如下逻辑:
while $counter>=0;
#do something to myFileNames[counter]
Run Code Online (Sandbox Code Playgroud)
我是shell脚本的新手,我无法弄清楚如何实现这一点,因此会对此事有任何帮助.
我有一个像下面这样的pandas数据帧:
categories review_count
0 [Burgers, Fast Food, Restaurants] 137
1 [Steakhouses, Restaurants] 176
2 [Food, Coffee & Tea, American (New), Restaurants] 390
... .... ...
... .... ...
... .... ...
Run Code Online (Sandbox Code Playgroud)
从这个dataFrame,我想只提取那些行,其中该行的'categories'列中的列表包含'Restaurants'类别.我至今尝试过:
df[[df.categories.isin('Restaurants'),review_count]],
因为我在dataFrame中还有其他列,所以我指定了要提取的这两列.但我得到错误:
TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)
我不太清楚这个错误意味着什么,因为我对熊猫很新.请告诉我如何实现我的目标,即仅从dataFrame中提取那些行,其中该行的"categories"列具有字符串'Restaurants'作为categories_list的一部分.任何帮助将非常感激.
提前致谢!
我一直在努力解决这个错误,现在似乎对于翻译抱怨"继续"的原因有不同的看法.所以我想在下面提供错误的代码.
import tweepy
import time
def writeHandlesToFile():
file = open("dataFile.txt","w")
try:
list = tweepy.Cursor(tweepy.api.followers,screen_name='someHandle',).items(100000)
print "cursor executed"
for item in list:
file.write(item.screen_name+"\n")
except tweepy.error.TweepError as e:
print "In the except method"
print e
time.sleep(3600)
continue
Run Code Online (Sandbox Code Playgroud)
我特别想在最后包括continue的原因是因为我希望程序在睡眠后从它停止的位置重新开始执行,以便保留程序状态.我需要睡眠才能遵守twitter api速率限制,其中api只允许你每小时发出一定数量的请求.所以任何可能看到我的错误天真或其他的人请指出它或请在没有使用continue语句的情况下为我提供替代实现.
顺便说一下,我没有像另一篇文章中所建议的那样混合标签和空格.提前谢谢你的帮助.
我有一个如下的条形图: http://matplotlib.org/examples/api/barchart_demo.html
在这种情况下,让我们假设G1-G5组中的每一组代表每组中男性参加某些考试的平均分数,并且每组中的女性参加相同的考试.
现在让我们说我有一些与每个组相关的其他功能(平均可爱性(在1-5之间浮动)).
Ex: Avg Likability of men in G1 - 1.33
Avg Likability of women in G1 - 4.6
Avg Likability of men in G2- 5.0
.... etc...
Run Code Online (Sandbox Code Playgroud)
让我们假设1 - 不讨人喜欢,5 - 非常讨人喜欢
我想知道如何通过改变颜色示例的阴影将这个可爱性特征结合到每个条形图中:因为上面例子中第1组的人有1.33,所以他们的图形将被涂上比红色阴影更浅的红色阴影. G2,因为G2的男性有5.0可爱,他们的酒吧将是图中最暗的红色,对女性来说也是如此.
我希望我已经说清楚了.如果有人能指出matplotlib中可以实现这一目标的资源,我真的很感激,因为我对这个软件包很新.
提前致谢.
如何将索引1,2,3 .... n中的x_axis标签设置为不同的东西.
lam_beta = [(lam1,beta1),(lam1,beta2),(lam1,beta3),....(lam_n,beta_n)]
chunks = [chunk1,chunk2,...chunk_n]
ht_values_per_chunk = {chunk1:[val1,val2,...],chunk2:[val1,val2,val3,.....]...}
color='rgbycmk'
j=0
for chunk in chunks:
plt.plot([hr_values_per_chunk[chunk][i] for i,item in enumerate(lam_beta)],[i for i,item in enumerate(lam_beta)],color=j%len(color))
j+=1
plt.set_xticks([i for i,item in enumerate(lam_beta)])
plt.set_xticklabels([item for item in lam_beta],rotation='vertical')
plt.show()
Run Code Online (Sandbox Code Playgroud)
错误:
AttributeError:'module'对象没有属性'set_xticks'
在这里,我无法将lambda_beta元组的值设置为x轴上每个刻度的值,因为它表示plt没有这样的方法.如何才能实现这一目标?我使用了xticks,因为这是我在matplotlib中生成直方图时的方法.任何帮助,将不胜感激.提前致谢!