Rosalyn  Maggio

Rosalyn Maggio

1611365211

How to get into Lowe's India and get a 19L CTC? Interview Experience l Success Story

Watch as Mehak Bhagat gets in conversation with Abhinav Rastogi from NIT as he shares his Interview Experience with Lowe’s India and his preparation.

#developer #interview-questions

What is GEEK

Buddha Community

How to get into Lowe's India and get a 19L CTC? Interview Experience l Success Story
Shubham Ankit

Shubham Ankit

1657081614

How to Automate Excel with Python | Python Excel Tutorial (OpenPyXL)

How to Automate Excel with Python

In this article, We will show how we can use python to automate Excel . A useful Python library is Openpyxl which we will learn to do Excel Automation

What is OPENPYXL

Openpyxl is a Python library that is used to read from an Excel file or write to an Excel file. Data scientists use Openpyxl for data analysis, data copying, data mining, drawing charts, styling sheets, adding formulas, and more.

Workbook: A spreadsheet is represented as a workbook in openpyxl. A workbook consists of one or more sheets.

Sheet: A sheet is a single page composed of cells for organizing data.

Cell: The intersection of a row and a column is called a cell. Usually represented by A1, B5, etc.

Row: A row is a horizontal line represented by a number (1,2, etc.).

Column: A column is a vertical line represented by a capital letter (A, B, etc.).

Openpyxl can be installed using the pip command and it is recommended to install it in a virtual environment.

pip install openpyxl

CREATE A NEW WORKBOOK

We start by creating a new spreadsheet, which is called a workbook in Openpyxl. We import the workbook module from Openpyxl and use the function Workbook() which creates a new workbook.

from openpyxl
import Workbook
#creates a new workbook
wb = Workbook()
#Gets the first active worksheet
ws = wb.active
#creating new worksheets by using the create_sheet method

ws1 = wb.create_sheet("sheet1", 0) #inserts at first position
ws2 = wb.create_sheet("sheet2") #inserts at last position
ws3 = wb.create_sheet("sheet3", -1) #inserts at penultimate position

#Renaming the sheet
ws.title = "Example"

#save the workbook
wb.save(filename = "example.xlsx")

READING DATA FROM WORKBOOK

We load the file using the function load_Workbook() which takes the filename as an argument. The file must be saved in the same working directory.

#loading a workbook
wb = openpyxl.load_workbook("example.xlsx")

 

GETTING SHEETS FROM THE LOADED WORKBOOK

 

#getting sheet names
wb.sheetnames
result = ['sheet1', 'Sheet', 'sheet3', 'sheet2']

#getting a particular sheet
sheet1 = wb["sheet2"]

#getting sheet title
sheet1.title
result = 'sheet2'

#Getting the active sheet
sheetactive = wb.active
result = 'sheet1'

 

ACCESSING CELLS AND CELL VALUES

 

#get a cell from the sheet
sheet1["A1"] <
  Cell 'Sheet1'.A1 >

  #get the cell value
ws["A1"].value 'Segment'

#accessing cell using row and column and assigning a value
d = ws.cell(row = 4, column = 2, value = 10)
d.value
10

 

ITERATING THROUGH ROWS AND COLUMNS

 

#looping through each row and column
for x in range(1, 5):
  for y in range(1, 5):
  print(x, y, ws.cell(row = x, column = y)
    .value)

#getting the highest row number
ws.max_row
701

#getting the highest column number
ws.max_column
19

There are two functions for iterating through rows and columns.

Iter_rows() => returns the rows
Iter_cols() => returns the columns {
  min_row = 4, max_row = 5, min_col = 2, max_col = 5
} => This can be used to set the boundaries
for any iteration.

Example:

#iterating rows
for row in ws.iter_rows(min_row = 2, max_col = 3, max_row = 3):
  for cell in row:
  print(cell) <
  Cell 'Sheet1'.A2 >
  <
  Cell 'Sheet1'.B2 >
  <
  Cell 'Sheet1'.C2 >
  <
  Cell 'Sheet1'.A3 >
  <
  Cell 'Sheet1'.B3 >
  <
  Cell 'Sheet1'.C3 >

  #iterating columns
for col in ws.iter_cols(min_row = 2, max_col = 3, max_row = 3):
  for cell in col:
  print(cell) <
  Cell 'Sheet1'.A2 >
  <
  Cell 'Sheet1'.A3 >
  <
  Cell 'Sheet1'.B2 >
  <
  Cell 'Sheet1'.B3 >
  <
  Cell 'Sheet1'.C2 >
  <
  Cell 'Sheet1'.C3 >

To get all the rows of the worksheet we use the method worksheet.rows and to get all the columns of the worksheet we use the method worksheet.columns. Similarly, to iterate only through the values we use the method worksheet.values.


Example:

for row in ws.values:
  for value in row:
  print(value)

 

WRITING DATA TO AN EXCEL FILE

Writing to a workbook can be done in many ways such as adding a formula, adding charts, images, updating cell values, inserting rows and columns, etc… We will discuss each of these with an example.

 

CREATING AND SAVING A NEW WORKBOOK

 

#creates a new workbook
wb = openpyxl.Workbook()

#saving the workbook
wb.save("new.xlsx")

 

ADDING AND REMOVING SHEETS

 

#creating a new sheet
ws1 = wb.create_sheet(title = "sheet 2")

#creating a new sheet at index 0
ws2 = wb.create_sheet(index = 0, title = "sheet 0")

#checking the sheet names
wb.sheetnames['sheet 0', 'Sheet', 'sheet 2']

#deleting a sheet
del wb['sheet 0']

#checking sheetnames
wb.sheetnames['Sheet', 'sheet 2']

 

ADDING CELL VALUES

 

#checking the sheet value
ws['B2'].value
null

#adding value to cell
ws['B2'] = 367

#checking value
ws['B2'].value
367

 

ADDING FORMULAS

 

We often require formulas to be included in our Excel datasheet. We can easily add formulas using the Openpyxl module just like you add values to a cell.
 

For example:

import openpyxl
from openpyxl
import Workbook

wb = openpyxl.load_workbook("new1.xlsx")
ws = wb['Sheet']

ws['A9'] = '=SUM(A2:A8)'

wb.save("new2.xlsx")

The above program will add the formula (=SUM(A2:A8)) in cell A9. The result will be as below.

image

 

MERGE/UNMERGE CELLS

Two or more cells can be merged to a rectangular area using the method merge_cells(), and similarly, they can be unmerged using the method unmerge_cells().

For example:
Merge cells

#merge cells B2 to C9
ws.merge_cells('B2:C9')
ws['B2'] = "Merged cells"

Adding the above code to the previous example will merge cells as below.

image

UNMERGE CELLS

 

#unmerge cells B2 to C9
ws.unmerge_cells('B2:C9')

The above code will unmerge cells from B2 to C9.

INSERTING AN IMAGE

To insert an image we import the image function from the module openpyxl.drawing.image. We then load our image and add it to the cell as shown in the below example.

Example:

import openpyxl
from openpyxl
import Workbook
from openpyxl.drawing.image
import Image

wb = openpyxl.load_workbook("new1.xlsx")
ws = wb['Sheet']
#loading the image(should be in same folder)
img = Image('logo.png')
ws['A1'] = "Adding image"
#adjusting size
img.height = 130
img.width = 200
#adding img to cell A3

ws.add_image(img, 'A3')

wb.save("new2.xlsx")

Result:

image

CREATING CHARTS

Charts are essential to show a visualization of data. We can create charts from Excel data using the Openpyxl module chart. Different forms of charts such as line charts, bar charts, 3D line charts, etc., can be created. We need to create a reference that contains the data to be used for the chart, which is nothing but a selection of cells (rows and columns). I am using sample data to create a 3D bar chart in the below example:

Example

import openpyxl
from openpyxl
import Workbook
from openpyxl.chart
import BarChart3D, Reference, series

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

values = Reference(ws, min_col = 3, min_row = 2, max_col = 3, max_row = 40)
chart = BarChart3D()
chart.add_data(values)
ws.add_chart(chart, "E3")
wb.save("MyChart.xlsx")

Result
image


How to Automate Excel with Python with Video Tutorial

Welcome to another video! In this video, We will cover how we can use python to automate Excel. I'll be going over everything from creating workbooks to accessing individual cells and stylizing cells. There is a ton of things that you can do with Excel but I'll just be covering the core/base things in OpenPyXl.

⭐️ Timestamps ⭐️
00:00 | Introduction
02:14 | Installing openpyxl
03:19 | Testing Installation
04:25 | Loading an Existing Workbook
06:46 | Accessing Worksheets
07:37 | Accessing Cell Values
08:58 | Saving Workbooks
09:52 | Creating, Listing and Changing Sheets
11:50 | Creating a New Workbook
12:39 | Adding/Appending Rows
14:26 | Accessing Multiple Cells
20:46 | Merging Cells
22:27 | Inserting and Deleting Rows
23:35 | Inserting and Deleting Columns
24:48 | Copying and Moving Cells
26:06 | Practical Example, Formulas & Cell Styling

📄 Resources 📄
OpenPyXL Docs: https://openpyxl.readthedocs.io/en/stable/ 
Code Written in This Tutorial: https://github.com/techwithtim/ExcelPythonTutorial 
Subscribe: https://www.youtube.com/c/TechWithTim/featured 

#python 

Rosalyn  Maggio

Rosalyn Maggio

1611365211

How to get into Lowe's India and get a 19L CTC? Interview Experience l Success Story

Watch as Mehak Bhagat gets in conversation with Abhinav Rastogi from NIT as he shares his Interview Experience with Lowe’s India and his preparation.

#developer #interview-questions

Jamal  Lemke

Jamal Lemke

1597323600

Uber’s Success Is Deeply Tied To Its Success In India: Shirish Andhare

India is currently in a vital phase of its infrastructure, energy, and mobility development, which nicely sets the stage to leapfrog current or existing practices. According to sources, an estimated 40% of its population will be living in urban areas by 2025, and they will account for over 60% of the consumption of resources.

Moreover, transportation in India is highly fragmented, disorganised across modes with poor infrastructure, congestion and low public transport density. Riders and drivers have to undertake multiple challenges daily such as lack of availability, reliability, quality, consistent pricing, safety etc.

To know more about the current space and transportation in India, Analytics India Magazine caught up with Shirish Andhare, Director, Program Management, Uber India and South Asia.


“Our goal is to change the Indian mindset and help people replace their car with their phone by offering a range of mobility options — whether cars, bikes, autos or public transport — all in the Uber app. By putting more people in fewer cars, we have the potential to build smarter and more liveable cities,” said Andhare.

Using technology, Uber India has been trying to transform the mobility landscape and change how people move around in the country by playing a transformational role in addressing pain points for riders and adding efficiency into the system.

With its multi-modal vision for mobility in India, Uber wants to make a variety of options available to help commuters get where they want to go at a price point that works for them. To that end, Uber has announced partnerships across airports and Metros in Delhi and Hyderabad to provide last-mile connectivity.

Transformation of Uber India

Andhare said that about seven years ago, Uber launched in Bangalore with just three employees. Today, Uber India has tech teams across Bangalore and Hyderabad. It continues its exponential growth journey, focusing on facilitating affordable, reliable and convenient transportation to millions of riders and livelihood opportunities for hundreds of thousands of driver-partners.

The company has doubled its engineering team in India this year. The R&D teams located in Hyderabad and Bangalore continue to grow and currently host over a dozen global charters including rider, maps, customer obsession, infrastructure, money, and eats. These teams are driving global impact for Uber based on several India-first product innovations.

Andhare said, “With over a billion trips in India and South Asia and counting, along with a large driver-partner base, we are focused on winning hearts and minds in the market. We plan to do this by doubling down on products that can solve for low network connectivity, congestion and pollution, as well as enable multiple price points with a varied set of offerings. Uber’s success is deeply tied to our success in India, we are in a strong position in India, and we are committed to serving the market.”

He added, “As we gear up to deliver the next billion rides in the region, we remain focused on providing convenient, affordable rides to millions of riders and stable and sustainable earning opportunities to driver-partners.”

Deep Tech At Uber

Andhare stated that technology provides an incredible opportunity to improve road safety in new and innovative ways before, during and after every ride. At every step, Uber is maximising the usage of technology to bring transparency and accountability through features such as two-way feedback and ratings, telematics and GPS, among others. These will have a positive impact on furthering trust and empathy between riders and driver-partners.

Uber’s Engineering Centre in Bangalore and Hyderabad are engaged in cutting-edge basic and applied technology solutions in areas that include rider growth, driver growth, digital payments, mapping, telematics, vehicle tracking/safety and fleet management, and the Uber core experience.

Some of the India-first innovations include the in-app emergency feature, arrears handling, driver inbound phone support, cash trips, Uber Rentals for longer trips and UberGO. The company is investing heavily in research and resources.

Some of the technologies used at Uber include computer vision, automation, Machine Learning(ML), Optical character recognition (OCR), and Artificial Intelligence (AI) techniques, NLP etc. These technologies are used in areas such as onboarding restaurant menus onto Uber marketplace, enabling earnings opportunities and more. It is also crucial to perform other tasks such as better routing, matching, fraud detection, document processing, maps editing, machine translations, customer support, and more.


#people #ai at uber #ai used in uber #interview with shirish andhare director program management of uber india #shirish andhare interview #technologies at uber india #uber ai #uber director interview #uber india #uber india ai

Monty  Boehm

Monty Boehm

1659453850

Twitter.jl: Julia Package to Access Twitter API

Twitter.jl

A Julia package for interacting with the Twitter API.

Twitter.jl is a Julia package to work with the Twitter API v1.1. Currently, only the REST API methods are supported; streaming API endpoints aren't implemented at this time.

All functions have required arguments for those parameters required by Twitter and an options keyword argument to provide a Dict{String, String} of optional parameters Twitter API documentation. Most function calls will return either a Dict or an Array <: TwitterType. Bad requests will return the response code from the API (403, 404, etc).

DataFrame methods are defined for functions returning composite types: Tweets, Places, Lists, and Users.

Authentication

Before one can make use of this package, you must create an application on the Twitter's Developer Platform.

Once your application is approved, you can access your dashboard/portal to grab your authentication credentials from the "Details" tab of the application.

Note that you will also want to ensure that your App has Read / Write OAuth access in order to post tweets. You can find out more about this on Stack Overflow.

Installation

To install this package, enter ] on the REPL to bring up Julia's package manager. Then add the package:

julia> ]
(v1.7) pkg> add Twitter

Tip: Press Ctrl+C to return to the julia> prompt.

Usage

To run Twitter.jl, enter the following command in your Julia REPL

julia> using Twitter

Then the a global variable has to be declared with the twitterauth function. This function holds the consumer_key(API Key), consumer_secret(API Key Secret), oauth_token(Access Token), and oauth_secret(Access Token Secret) respectively.

twitterauth("6nOtpXmf...", # API Key
            "sES5Zlj096S...", # API Key Secret
            "98689850-Hj...", # Access Token
            "UroqCVpWKIt...") # Access Token Secret
  • Ensure you put your credentials in an env file to avoid pushing your secrets to the public 🙀.

Note: This package does not currently support OAuth authentication.

Code examples

See runtests.jl for example function calls.

using Twitter, Test
using JSON, OAuth

# set debugging
ENV["JULIA_DEBUG"]=Twitter

twitterauth(ENV["CONSUMER_KEY"], ENV["CONSUMER_SECRET"], ENV["ACCESS_TOKEN"], ENV["ACCESS_TOKEN_SECRET"])

#get_mentions_timeline
mentions_timeline_default = get_mentions_timeline()
tw = mentions_timeline_default[1]
tw_df = DataFrame(mentions_timeline_default)
@test 0 <= length(mentions_timeline_default) <= 20
@test typeof(mentions_timeline_default) == Vector{Tweets}
@test typeof(tw) == Tweets
@test size(tw_df)[2] == 30

#get_user_timeline
user_timeline_default = get_user_timeline(screen_name = "randyzwitch")
@test typeof(user_timeline_default) == Vector{Tweets}

#get_home_timeline
home_timeline_default = get_home_timeline()
@test typeof(home_timeline_default) == Vector{Tweets}

#get_single_tweet_id
get_tweet_by_id = get_single_tweet_id(id = "434685122671939584")
@test typeof(get_tweet_by_id) == Tweets

#get_search_tweets
duke_tweets = get_search_tweets(q = "#Duke", count = 200)
@test typeof(duke_tweets) <: Dict

#test sending/deleting direct messages
#commenting out because Twitter API changed. Come back to fix
# send_dm = post_direct_messages_send(text = "Testing from Julia, this might disappear later $(time())", screen_name = "randyzwitch")
# get_single_dm = get_direct_messages_show(id = send_dm.id)
# destroy = post_direct_messages_destroy(id = send_dm.id)
# @test typeof(send_dm) == Tweets
# @test typeof(get_single_dm) == Tweets
# @test typeof(destroy) == Tweets

#creating/destroying friendships
add_friend = post_friendships_create(screen_name = "kyrieirving")

unfollow = post_friendships_destroy(screen_name = "kyrieirving")
unfollow_df = DataFrame(unfollow)
@test typeof(add_friend) == Users
@test typeof(unfollow) == Users
@test size(unfollow_df)[2] == 40

# create a cursor for follower ids
follow_cursor_test = get_followers_ids(screen_name = "twitter", count = 10_000)
@test length(follow_cursor_test["ids"]) == 10_000

# create a cursor for friend ids - use barackobama because he follows a lot of accounts!
friend_cursor_test = get_friends_ids(screen_name = "BarackObama", count = 10_000)
@test length(friend_cursor_test["ids"]) == 10_000

# create a test for home timelines
home_t = get_home_timeline(count = 2)
@test length(home_t) > 1

# TEST of cursoring functionality on user timelines
user_t = get_user_timeline(screen_name = "stefanjwojcik", count = 400)
@test length(user_t) == 400
# get the minimum ID of the tweets returned (the earliest)
minid = minimum(x.id for x in user_t);

# now iterate until you hit that tweet: should return 399
# WARNING: current versions of julia cannot use keywords in macros? read here: https://github.com/JuliaLang/julia/pull/29261
# eventually replace since_id = minid
tweets_since = get_user_timeline(screen_name = "stefanjwojcik", count = 400, since_id = 1001808621053898752, include_rts=1)

@test length(tweets_since)>=399

# testing get_mentions_timeline
mentions = get_mentions_timeline(screen_name = "stefanjwojcik", count = 300) 
@test length(mentions) >= 50 #sometimes API doesn't return number requested (twitter API specifies count is the max returned, may be much lower)
@test Tweets<:typeof(mentions[1])

# testing retweets_of_me
my_rts = get_retweets_of_me(count = 300)
@test Tweets<:typeof(my_rts[1])

Want to contribute?

Contributions are welcome! Kindly refer to the contribution guidelines.

Linux: Build Status 

CodeCov: codecov

Author: Randyzwitch
Source Code: https://github.com/randyzwitch/Twitter.jl 
License: View license

#julia #api #twitter 

Wipro Elite National Talent Hunt Interview Experience 2020

Round 1 : Online Test

As you all know that Wipro conducted the National Talent Hunt exam all over the world.

The questions were mainly asked on Aptitude, Logical and verbal ability, Essay Writing.

In the technical section there were two codes open to all major languages like java, C, C++, python etc.

The coding questions were too easy and I solved both the questions and passed all the test cases

After giving the mail I received the interview Invite for further round.

Round 2: Technical Interview

The interview started by saying that, “Make yourself comfortable, by telling about yourself”.

The interviewer only asked questions based on my resume. The following were the questions asked to me.

What is Infosys Certified Software Programmer?

What was the pattern of that exam?

What was your project during the internship with persistent systems?

How many team members were there in your project?

How was the behavior of the team members?

What is your contribution during the internship period?

In how much time did you learned Ruby on Rails?

What is your final year project and why you choose the same?

What SDLC you will be using for developing the project and Why?

I hope you are relocatable, as we have offices all across India?

And Finally, He said “ I am done with the interview, Do you have any questions?

I asked Him, what is Wipro doing in the field of AI, ML?

He told the same.

At the end, He said, “Any more questions”

I replied No Sir

He then said “You are selected, you can move ahead for you HR interview”

Round 3: HR Interview

Following were the questions asked in the HR Interview

Tell me about Yourself?

What were the questions asked in Technical interview?

Which language you used to solve coding questions in Wipro NLTH exam?

Are you ready to work from anywhere in India?

What was the topic of the essay in the Wipro NLTH exam?

Note: If you know the topic then only answer the question, else say I don’t remember the topic of essay. Because if you try to fluke the topic, the interviewer may catch you and ask more questions on the same. This happened with many students on that day. Students fluked the essay topic, further, the interview asked them to describe what you have written in the essay in short.

And Finally, He said “ I am done with the interview, Do you have any questions?”

I asked him regarding the Wipro Turbo Challenge.

He replied that Wipro is working on it, you will receive the updates regarding the same through mail.

After someday, I received the Letter Of Intent for the post of Project Engineer.

#interview experiences #marketing #wipro #wipro-interview-experience #interview